问题:
项目启动报zookeeper连接错误
java.lang.RuntimeException: java.lang.IllegalStateException: failed to connect to zookeeper server at
Can not create registry service-discovery registry://172.22.x.xxx:2181/org.apache.dubbo.registry
解决:
zookeeper版本支持问题,经测试(dubbo3.0.2.1),3.4.13及以下版本正常运行,3.4.14后报错。pom切换Dubbo版本后即可正常运行
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo</artifactId>
<version>3.0.2.1</version>
</dependency>
分析:
1.首先检查zk端口是否可用,win10要注意先勾选telnet
cmd命令窗中输入:“Telnet IP 端口 或者 Telnet 域名 端口” 并且回车,如果进入Telnet页面(全黑的),证明端口可用
2.是否超时时间,把超时时间设置很大,且设置了多个还是报错,根据报错位置调试源码发现,zk的connection不为null,但是后续报错Can not create registry service-discovery registry:
所以怀疑是版本问题,降低版本后成功运行
dubbo:
registry:
timeout: 100000
config-center:
timeout: 100000
metadata-report:
timeout: 100000