Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[help]当提供者出现断电等异常停机时,注册中心不能自动删除提供者信息 #3920

Closed
2 tasks
haroldyong opened this issue Apr 24, 2019 · 7 comments

Comments

@haroldyong
Copy link

  • 我在测试环境部署了dubbo 分布式rpc框架,使用 dubbo admin作为管理平台
  • 测试环境有3台zookeeper.分布式在不同机器

Environment

  • Dubbo version: 2.7.1
  • Operating System version: centos 7
  • Java version: 8u201
  • dubbo admin version: dubbo-admin-0.0.1-SNAPSHOT

Steps to reproduce this issue

  1. 本地启动某应用注册服务到dubbo中心,在 dubbo admin中可以看到该服务,看到provider信息
  2. 本地停止java应用后,dubbo admin中关于本条provider的信息仍然存在
  3. xxx

Pls. provide [GitHub address] to reproduce this issue.

Expected Result

What do you expected from the above steps?

Actual Result

What actually happens?

If there is an exception, please attach the exception trace:

Just put your stack trace here!
@nzomkxia
Copy link
Member

看一下停止服务以后,zk上是否存在对应服务的provider节点?

@haroldyong
Copy link
Author

看一下停止服务以后,zk上是否存在对应服务的provider节点?

非常感谢回复问题。

我刚才 将开发环境下的三台zk全部 .zkServer.sh stop掉了。
但在 dubbo admin 的web 界面下仍然看到所有的 providers 和 consumer的信息。

@haroldyong
Copy link
Author

看一下停止服务以后,zk上是否存在对应服务的provider节点?

我直接把服务进程 kill -9 ,那么在zk 的provider 节点上还是存在之前的数据的

如果我通过正常的 shutdown 方式关闭应用,那么在zk的provider 节点上是可以自动删除注册的数据的

@haroldyong haroldyong changed the title dubbo admin显示已停止服务的 providers信息 [help]当提供者出现断电等异常停机时,注册中心不能自动删除提供者信息 Apr 25, 2019
@dtype
Copy link

dtype commented May 7, 2019

2.7.1版本存在的问题,2.7.2-SNAPSHOT已经修复.
原因是动态服务参数默认值改了,导致服务注册为静态服务,需要手工上下线

@haroldyong
Copy link
Author

2.7.1版本存在的问题,2.7.2-SNAPSHOT已经修复.
原因是动态服务参数默认值改了,导致服务注册为静态服务,需要手工上下线

请问是哪个参数,是源代码里面配置的?还是配置文件里面?谢谢
btw,我线上可不能用SNAPSHOT _

@luoning810
Copy link
Contributor

2.7.1版本存在的问题,2.7.2-SNAPSHOT已经修复.
原因是动态服务参数默认值改了,导致服务注册为静态服务,需要手工上下线

请问是哪个参数,是源代码里面配置的?还是配置文件里面?谢谢
btw,我线上可不能用SNAPSHOT ___

provider端 @service#dynamic()
2.7.1版本该值默认是false,设置为true就可以

@haroldyong
Copy link
Author

2.7.1版本存在的问题,2.7.2-SNAPSHOT已经修复.
原因是动态服务参数默认值改了,导致服务注册为静态服务,需要手工上下线

请问是哪个参数,是源代码里面配置的?还是配置文件里面?谢谢
btw,我线上可不能用SNAPSHOT ___

provider端 @service#dynamic()
2.7.1版本该值默认是false,设置为true就可以

非常感谢,已经解决。

我的配置如下:

<dubbo:service
interface="com.xxx.Rpc" ref="RpcImpl"
version="${dubbo.provider.version}" dynamic="true" delay="5000" />

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants