-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
环境 K8s
dubbo-admin版本 基于master最新分支0.3.0
注册中心 zk
java版本1.8_261
问题描述及现象
dubbo-go作为xxx服务的consumer时,会注册到dubbo-admin上,dubbo-admin却认为它是provider,点击对应的服务测试后,真正的provider信息被覆盖,服务不能再被调用




查看源码猜测原因:
-
消费者语言为go,用的是dubbo-go,从url中看到registry url 中 side为consumer
consumer:///com.xxx.service.api.CustomerApi?app.version=1.0.0&application=xxx&async=false&bean.name=ServiceBean:com.xxx.service.api.CustomerApi:1.0.0&check=false&cluster=failover&environment=environment&generic=false&group=group&interface=com.xxx.service.api.CustomerApi&ip=10.46.19.116&loadbalance=loadbalance&methods.findCustomerByTeamUid.loadbalance=methods.findCustomerByTeamUid.loadbalance&methods.findCustomerByTeamUid.retries=1&methods.findCustomerByTeamUid.sticky=false&methods.getPrimaryServiceGroupByCustomerUid.loadbalance=methods.getPrimaryServiceGroupByCustomerUid.loadbalance&methods.getPrimaryServiceGroupByCustomerUid.retries=1&methods.getPrimaryServiceGroupByCustomerUid.sticky=false&module=dubbo-go client&name=xxx&organization=dubbo.io&owner=owner&protocol=rest&provided-by=provided-by&reference.filter=cshutdown®istry.role=0&release=dubbo-golang-1.5.6&retries=retries&side=consumer&sticky=false&version=1.0.0 -
由于RegistryServerSync#notify()这里的逻辑,如果category为null则默认为provider,把消费者变成了生产者,覆盖了真正的生产者

请问这样做,是否合理呢,如果合理,麻烦采纳一下,谢谢!
