dubbo2.7.19使用nacos-client 1.2.0出现服务不可用

u5rb5r59  于 2022-12-31  发布在  Nacos
关注(0)|答案(1)|浏览(305)

dubbo2.7.19使用nacos-client1.2.0作为消费端

当消费端进行服务订阅时:

当回调EventListener
图2:

进入到NacosInstanceManageUtil.getAllCorrespondingServiceInstanceList()

此时map里面有一个服务名称,与刚刚传入的值不一致,此时返回空列表
最后去调用refreshOverrideAndInvoker方法,,造成无可用的invoker列表
建议
1,在subscribeEventListener方法中,NacosInstanceManageUtil.getAllCorrespondingServiceInstanceList方法中,直接传入serviceName,不要e.getServiceName()
2,当服务下线时,清除一下CORRESPONDING_SERVICE_NAMES_MAP相应的服务名称

相关问题