[问题解决]基于注解配置dubbo遇到ConnectionLoss for /dubbo/xxx问题解决
今天升級spring版本的時候,同時升級dubbo的版本,采用的是dubbo的基于注解的配置方法,采用curator作為dubbo的客戶端,
curator版本為4.1.0,啟動之后,發現一直報錯?ConnectionLoss for /dubbo/xxx, 通過debug調試源碼發現兩個問題:
1. 連接服務端經常返回 KeeperNode Not found的現象,即dubbo節點找不到,但是通過dubbo admin是可以看到節點注冊成功的
2. Zookeeper客戶端對于連接失敗的接口,一直不斷重連,Zookeeper實例連接正常
通過Zookeeper服務端日志發現有warn日志:Received at server of unknown type 15
通過推斷可以知道,由于客戶端版本過新,Zookeeper服務端部分特性不支持,導致客戶端的找不到節點和不斷重連
?
解決方案:修改pom.xml文件如下:
<dependency><groupId>org.apache.curator</groupId><artifactId>curator-recipes</artifactId><version>4.1.0</version><exclusions><exclusion><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.4.13</version></dependency>這樣解決了引入高版本的curator客戶端,由繼續使用了Zookeeper的跟服務器兼容的客戶端版本。
curator和Zookeeper的搭配參考:?http://curator.apache.org/zk-compatibility.html
轉載于:https://www.cnblogs.com/zhuangmingnan/p/10660630.html
總結
以上是生活随笔為你收集整理的[问题解决]基于注解配置dubbo遇到ConnectionLoss for /dubbo/xxx问题解决的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3. Longest Substring
- 下一篇: 14.菜单和控制栏