nacos-2.2x- 客户端启动流程
nacos从 2.2.x后 nacos-client 就开始使用 grpc进行通信了
NacosConfigService
NacosConfigService
ServerListManager: 维护可用 serverList 列表
ClientWorker:client 动态拉取变更配置
ServerHttpAgent:http客户端,不常用
ClientWorker
ClientWorker:维护grpc client 连接
ConfigRpcTransportClient
start
login
startInternal
executeConfigListen
listenExecutebell:blockingQueue: 5秒轮询
cacheMap
CacheData
ConfigBatchListenRequest://请求ConfigChangeBatchListenRequestHandler,
//注册groupKey和connectionId关系
RpcClientFactory
GrpcSdkClient
changeKeys:ConfigBatchListenRequest 响应返回 changeKeys
ConfigQueryRequest
GrpcSdkClient
GrpcSdkClient 初始化
start
clientEventExecutor:负责grpc客户端第一次和重连
reconnectionSignal:BlockingQueue<ReconnectContext>, 轮询队列有值时,则进行重连
reconnect
connectToServer
currentConnection: connectToServer成功之后设置,在grpcSdkClient请求操作中使用
NamingGrpcClientProxy
NamingGrpcClientProxy
onEvent:ServerlistChangeEvent
ServerListFactory
getServerList
switchServerAsync
reconnectionSignal.offer:ReconnectContext