微服务注册发现Eureka/Ribbon架构和实践

Eureka是什么

  Eureka是Netflix的一个子模块,采用的是c/s架构,Spring Cloud 中将 Eureka 集成在 Spring Cloud Netflix 项目中。Eureka是一个基于REST的服务,用来实现服务注册和发现,负载均衡等功能。

  Spring Cloud内置Eureka客户端,而Eureka服务端需要独立部署。
 
  服务注册与发现对于微服务架构来说是非常重要的,有了服务发现与注册,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了。功能类似于dubbo的注册中心,比如Zookeeper。

  Eureka的GitHub:https://github.com/Netflix/Eureka

    Eureka在Spring Cloud技术体系中的位置

  

 

Eureka基础架构

  Eureka架构包括三个组成部分:

    1、服务注册中心

      Eureka分为客户端和服务端,Eureka服务端提供服务注册与发现的功能,也是Eureka最核心的部分。

      Eureka服务端没有提供对外服务的能力,在Eureka内部自带一个微服务(Provider Service),就是的下面服务提供者。

    2、服务提供者(客户端)

      服务提供者是Eureka自带的客户端,为客户(Consumer Service)提供服务,Spring Boot应用或者遵循Eureka通信机制的应用。

      将应用自己注册到Eureka注册中心,以供其它应用的发现。

    3、服务消费者(客户端)

      消费者从服务注册中心获取服务列表,通过客户端负载均衡某种算法轮询服务列表,然后调用其所需要的服务,也即调用对应的服务提供者。

    

 

 注意:

 2018年,在Euraka的GitHub上,宣布Eureka 2.x闭源,因为Eureka 2.x使用了很多新技术,在开发过程中,发现并没达到预期,并且Eureka 2.x还未发布正式版本。

 具体查看 https://github.com/Netflix/eureka/wiki

 

  但是Eureka1.x持续维护中,Spring Cloud使用的1.9.x不会收到影响

 

Eureka注册中心搭建

 

posted @ 2021-01-09 15:25  songguojun  阅读(263)  评论(0)    收藏  举报