Eureka源码解析:eureka-client启动原理分析
Posted 魏卯卯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Eureka源码解析:eureka-client启动原理分析相关的知识,希望对你有一定的参考价值。
在eureka-examples项目中存在一个ExampleEurekaClient类,是eureka自带的例子。我们基于此类来跟踪源码。
其实在eureka-server中已经涉及到了eureka-client的一个启动流程了,我们再来进行捋一遍。
流程图:
源码分析:
ExampleEurekaClient,相当于是一个你自己写的普通的服务
(1)读取eureka-client.properties配置文件,形成一个服务实例的配置,基于接口对外提供服务实例的配置项的读取。
(2)基于服务实例的配置,构造了一个服务实例(InstanceInfo)。
(3)基于服务实例的配置和服务实例,构造了一个服务实例管理器(ApplicationInfoManager)。
(4)读取eureka-client.properites配置文件,形成一个eureka client的配置,接口接口对外提供eureka client的配置项的读取。
(5)基于eureka client配置,和服务实例管理器,来构造了一个EurekaClient(DiscoveryClient),保存了一些配置,处理服务的注册和注册表的抓取,启动了几个线程池,启动了网络通信组件,启动了一些调度任务,注册了监控项。
以上是关于Eureka源码解析:eureka-client启动原理分析的主要内容,如果未能解决你的问题,请参考以下文章
Eureka-client 无法调用另一个 Eureka-client,抛出 UnknownHostException
SpringCloud之Eureka-Client服务提供者
Eureka-server配置servlet.context-path后导致Eureka-client注册到server问题