nacos 基于 2.2.4 版本 nacos 基于 grpc 的长连接来实现 client 和 server 的通信。 在有多个 server 端时,最初开始 client 的连接会均匀分布在 server 端,当重新上线 server 时,这时候 client 的连接会偏移到其他
nacos 基于 2.2.4 版本 这里的 client 是指 nacos SDK,也就是模块 nacos-client. 订阅服务的主流程 源码位置: com.alibaba.nacos.client.naming.NacosNamingService#subscribe 1 2 3 4 5 6 7 8 9 10 11 12 13 // NacosNamingService 订阅服务 @Override public void subscribe(String serviceName, String groupName, List<String> clusters, EventListener listener) throws NacosException {
nacos 基于 2.2.4 版本 这里的 client 是指 nacos SDK,也就是模块 nacos-client. 注销实例的主流程 源码位置: com.alibaba.nacos.client.naming.NacosNamingService#deregisterInstance 1 2 3 4 5 6 // 入口类: NacosNamingService @Override public void deregisterInstance(String serviceName, String groupName, Instance instance) throws NacosException { // clientProxy 的实现类为 NamingClientProxyDelegate clientProxy.deregisterService(serviceName,
nacos 基于 2.2.4 版本 这里的 client 是指 nacos SDK,也就是模块 nacos-client. 注册实例的主流程 源码位置: com.alibaba.nacos.client.naming.NacosNamingService 1 2 3 4 5 6 7 8 // NacosNamingService 注册实例,最后由 NamingClientProxyDelegate 来注册。 @Override public void registerInstance(String serviceName, String groupName, Instance instance) throws
nacos 基于 2.2.4 版本 nacos 的 grpc client 使用的是生成的代码,位置在 com.alibaba.nacos.api.grpc.auto client 的启动 源码位置: com.alibaba.nacos.common.remote.client.RpcClient#start 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
nacos 基于 2.2.4 版本 nacos 在 2.0 版本中引入了 grpc,用来处理http连接数过多的问题,所以有必要看看nacos 是怎么使用 grpc的,这样方便我们理清整个