2023-09-15
原文作者:王伟王胖胖 原文地址: https://blog.csdn.net/wangwei19871103/article/details/105746715

服务发现相关配置类介绍

前面都讲了配置服务的原理,还有一个服务发现呢,主要是这些自动配置类。

202309152317089881.png

NacosDiscoveryAutoConfiguration

NacosDiscoveryProperties服务发现属性和命名服务

通过他可以直接获取命名服务,比如在负载均衡器ZoneAwareLoadBalancer初始化中获取服务的时候有用到,林另外他还是spring.cloud.nacos.discovery配置属性类:

202309152317099422.png

202309152317107003.png

NacosServiceDiscovery

通过NacosDiscoveryPropertiesNamingService获取信息,将Instance封装成ServiceInstance

202309152317113774.png

NacosDiscoveryClientConfiguration获取服务信息用

NacosDiscoveryClient

封装了NacosServiceDiscovery,通过NacosServiceDiscovery来做事。

202309152317126245.png

NacosWatch

202309152317132766.png

创建了一个ThreadPoolTaskScheduler调度器,实现了SmartLifecycle,在start方法中执行了调度任务。

202309152317138637.png
任务是30秒一次的心跳来通知心跳事件。

202309152317144308.png

NacosDiscoveryEndpointAutoConfiguration监控相关

NacosDiscoveryEndpoint

202309152317149459.png

NacosDiscoveryHealthIndicator健康检查

实例化的时候会先创建命名服务:

2023091523171555210.png

RibbonNacosAutoConfiguration

这个是给Ribbon提供服务名,这个很关键,后面会讲。

2023091523171634211.png

2023091523171688312.png

大致注入就这些了,后面继续分析下具体实现。

好了,今天就到这里了,希望对学习理解有帮助,大神看见勿喷,仅为自己的学习理解,能力有限,请多包涵

阅读全文