《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解

Eureka的流程说明:

1、服务提供者会向Eureka Server做Register(服务注册)、Renew(服务续约)、Cancel(服务下线)等操作。

2、Eureka Server之间会做注册服务的Replicate(复制),从而保证状态一致。

3、服务消费者会向Eureka Server获取Registry(注册服务列表),并Make Remote Call(远程调用)消费服务

一、Eureka服务端启动过程

1、  入口:EurekaServerInitializerConfiguration

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第1张图片

说明:该类添加了@Configuration注解,可以被Spring容器感知。

2、  Eureka的初始化:

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第2张图片

说明:

a)initEurekaEnvironment(); 环境的初始化。

b) initEurekaServerContext();服务的初始化。

3、查找服务初始化,里面的Eviction

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第3张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第4张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第5张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第6张图片

二、 Eureka客户端注册过程

客户端注册流程

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第7张图片

1、入口:DiscoveryClient

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第8张图片

功能说明:

1、  向Eureka Server注册服务实例

2、  向Eureka Server续约

3、  当服务关闭的时候向Eureka Server取消租约

4、  查询注册到Eureka Server中的服务实例

2、实例化,调用构造方法

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第9张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第10张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第11张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第12张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第13张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第14张图片

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第15张图片

三、服务端接收注册过程

接收注册的流程:

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第16张图片

1、入口:ApplicationResource的addInstance()方法

《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第17张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第18张图片
《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解_第19张图片

说明:

1、 调用PeerAwareInstanceRegistryImpl的register方法

2、 完成服务注册后,调用replicateToPeers向其它Eureka Server节点(Peer)做状态同步

参考文档:http://nobodyiam.com/2016/06/25/dive-into-eureka/

参考视频内容:http://www.roncoo.com/course/view/cc8fbd6749f94f2fa015641ef96b9460

你可能感兴趣的:(《Spring Cloud Netflix》--服务注册和服务发现-Eureka的深入了解)