apache / dubbo-spring-boot-project

Spring Boot Project for Apache Dubbo
https://dubbo.apache.org
Apache License 2.0
5.41k stars 1.88k forks source link

使用dubbo-2.7.1版本, 提供者服务关掉后dubbo-admin仍然可以查询到服务者和提供者, 当提供者服务再次开启注册中心会重新注册服务, 之前的提供者也会在dubbo-admin里? #502

Closed tracywatthp closed 5 years ago

tracywatthp commented 5 years ago

image 当提供者服务关闭后,dubbo-admin里仍可以看到有服务和提供者,但是无法消费,重新开启provider-server后, dubbo-admin里会增加一条提供者信息。 image 请问这是怎么回事?该如何配置, 虽然这样不影响使用, 但是测试和监控过程中不知道服务提供者是否真实存在。

aaafenghao commented 5 years ago

我也遇到这个问题了,有解决方案么

stormbirds commented 5 years ago

我也遇到这个问题,我的情况是我在三台服务器上提供服务,这个服务会有会有三个不同的ip,这是正常的,但是当我把服务全部重启后,会再次增加三个一样的服务,相当于会出现6个服务提供者,我后来发现我的有一台服务器的时钟设置有问题,没有跟另外两台同步,我把时钟同步后现在正常了,服务提供方掉线的话,dubbo-admin里会移除该提供者。

carryxyh commented 5 years ago

这可能是由于这个问题导致的:https://github.com/apache/incubator-dubbo/issues/3785

2.7.1中由于dynamic的默认值变成了false,导致注册在zk上的url都是持久化的。所以下线的时候不会默认删除,而是会一直存在。

tracywatthp commented 5 years ago

确实是dynamic=false造成的, 不知道为什么2.7.1中的AbstractServiceConfig.dynamuc默认改成false了, 之前版本默认为true, 所以需要在提供者配置文件中修改配置dubbo.provider.dynamic=true就好了

SevenBlue2018 commented 5 years ago

我在配置文件中配置 dubbo.registry.dynamic=true dubbo.provider.dynamic=true 根本不生效,这是因为什么?2.7.1版本