SpringCloudAlibaba | Nacos2.0源码解析

771 阅读1分钟

NacosConfigAutoConfiguration

应用启动时通过NacosConfigAutoConfiguration自动配置类加载NacosConfigManager

image.png

NacosConfigManager

那么在NacosConfigManager通过构造函数实例化时发生了什么呢?
1.将NacosConfigProperties配置注入进来
2.调用静态方法createConfigService双重检查后通过NacosFactory.createConfigService创建NacosConfigService实例

image.png

NacosFactory

NacosFactory.createConfigService内部其实调用的是ConfigFactory.createConfigService

image.png

ConfigService

createConfigService通过反射机制实例化NacosConfigService对象

image.png

NacosConfigService

1.初始化命名空间
2.封装MetricHttpAgent用于上报数据信息到Metrics
3.实例化ClientWorker
image.png

ClientWorker

1.初始化只有一个核心线程的定时执行的线程池Worker
2.初始化当前机器CPU核心线程数的定时执行线程池LongPolling
3.线程池Worker每隔10ms长轮询执行任务:检查配置信息 4.

image.png