服务注册发现:Eureka源码剖析(3)服务注册
Eureka Client启动流程
1 | public class ExampleEurekaClient { |
其实这部分已经在上篇文章剖析过了,这里直接出总结

Eureka Client是如何进行服务注册的
- 在eureka-client实例化的最后一步,启动了一个实例信息复制器,默认40秒之后开始执行,这个定时任务逻辑如下
1 | public void start(int initialDelayMs) { |
Eureka Server是如何完成服务注册的
- 上一步客户端发起服务注册后,ApplicationResource#addInstance 会接收到请求,最终将请求转给PeerAwareInstanceRegistry.register
- 进行注册
- 将请求送上来的实例信息放到自己的服务注册表中
ConcurrentHashMap<String, Map<String, Lease<InstanceInfo>>> registry - 将服务实例放到最近注册队列(recentRegisteredQueue)中去
- 将服务实例放到最近变更队列(recentlyChangedQueue)中去
- 过期ResponseCache
- 将请求送上来的实例信息放到自己的服务注册表中
- 同步注册到其他节点
总结

- Title: 服务注册发现:Eureka源码剖析(3)服务注册
- Author: 侯乾
- Created at : 2019-12-13 19:30:22
- Updated at : 2019-12-13 19:30:22
- Link: http://houqian.github.io/2019/12/13/服务注册发现:Eureka源码剖析(3)服务注册/
- License: This work is licensed under CC BY-NC-SA 4.0.
Comments