Nacos Naming客户端核心代码封装nacos-client包内,主要通过NamingService接口来实现服务的注册/发现等一系列操作。client会在内存中保存订阅的所有服务的信息,并通过UDP协议接受来自server的更新。client相关的核心类如下图:
- HostReactor维护了订阅的Service列表,并通过PushService获得server端的更新。
- BeatReactor负责心跳包的发送。
- FailoverReactor通过一个文件配置激活failover模式。该模式下,会从本地文件中读取服务 列表信息。