首页 > 编程语言 >client启动过程源码剖析

client启动过程源码剖析

时间:2023-02-20 11:57:50浏览次数:28  
标签:初始化 client 剖析 7.3 源码 注册 注册表 2.4

1 实例化EurekaInstanceConfig对象instanceConfig

  

2 先初始化InstanceInfo对象,再基于构建好的instanceConfig和instanceInfo构建applicationInfoManager对象

  

3 初始化eurekaClientConfig对象(加载过程跟eurekaServerConfig类似,这儿加载的是eureka-client.properties文件)

  

4 初始化eurekaClient对象

  

  2.4.1 从applicationInfoManager中拿到自己的信息myInfo

  

  2.4.2 构建appPath标识符,大概就是这样子:serviceA/i000001

  

  2.4.3 如果不需要注册,也不需要抓取注册表,就释放资源,直接return

  2.4.4 初始化服务发现、心跳、缓存刷新3个线程池

  2.4.5 初始化网络通信相关的组件

  

  2.4.6 抓取全量注册表

  

  2.4.7 初始化调度任务,client向server注册的逻辑就在这里面!!!!!!

  

    2.4.7.1 如果需要抓取注册表,就启动一个timer每隔30s定时刷新注册表信息

    

    2.4.7.2 如果需要发起注册,就启动一个timer每隔30s去发送心跳

    

    2.4.7.3 初始化instanceInfoReplicator对象,这是个Runnable对象,主要用来注册用

    

      2.4.7.3.1 后台线程启动,执行当前类的run()方法

      

      2.4.7.3.2 服务注册,其实就是发送一个http请求到server端

      

      2.4.7.3.3 server端的服务注册逻辑入口(核心逻辑就是针对注册表这个map数据结构进行增删改操作)

      

 

 

到这,eureka-client端就初始化完成了

 

标签:初始化,client,剖析,7.3,源码,注册,注册表,2.4
From: https://www.cnblogs.com/ming00321/p/17136816.html

相关文章