还是微服务治理的事情,没事给微服务加版本号,加了之后部署到测试环境去,后台一直刷Log,死循环一样:
WARN [alibaba.dubbo.remoting.transport.AbstractServer] - [DUBBO] All clients has disconnected from /{IP} :{ port}. You can graceful shutdown now., dubbo version: 1.1.0, current host: 127.0.0.1
一开始以为是WARN,不管它,先把功能保证没问题了再说,不是ERROR能忍就忍了吧。然而,在它狂刷“you can graceful shutdown”的时候,其他应用连这个微服务一直连不上,这就不好了,你自己有点Warning不要紧,但是直接拒绝提供服务给别人就不好了啊。
再仔细看看这段Log的意思:所有客户端都已从你的服务方断开,你可以优雅地关闭服务了。
怎么可能呢,好几个客户端不停地请求服务,然后一直被拒绝……
后来有人路过,说了一句:“你们提供的服务添加了版本号,那consumer一方也应该指定版本号……”
此话是正解。在客户端注册service的xml文件中加上版本号,然后就ok了。
也就是说,在你的服务已经正常启动,而且有客户端注册了此服务的情况下,All Clients has disconnected from 是不对的,你要保证服务提供方和消费方配置的service-version是一致的。
如果服务没启动,那么先启动服务……
如果真的没有客户端使用这个服务,那么这真的不是错……
网友评论