dubbo+zookeeper报错KeeperException$UnimplementedException: KeeperErrorCode = Unimplemented forXXXXXX

在尝试使用Dubbo与Zookeeper进行整合时,遇到了KeeperException$UnimplementedException,该异常通常表明在操作Zookeeper时,遇到了未实现的方法。查阅官方文档(http://curator.apache.org/zk-compatibility.html)可以找到更多关于这个问题的解决方案和兼容性指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在弄dubbo的时候,到zookeeper中注册的时候抛出一个异常如下,后来在查阅资料的时候发现我使用curator-framework的版本是4.0+版本,在它的官网中说使用4.0在支持ZooKeeper 3.4.x集合需要排除依赖ZooKeeper
官网提示:http://curator.apache.org/zk-compatibility.html

官网上是这么说的:
ZooKeeper 3.5.x
    Curator 4.0 has a hard dependency on ZooKeeper 3.5.x
    If you are using ZooKeeper 3.5.x there's nothing additional to do - just use Curator 4.0
ZooKeeper 3.4.x
    Curator 4.0 supports ZooKeeper 3.4.x ensembles in a soft-compatibility mode. To use this mode you must exclude ZooKeeper when adding Curator to your dependency management tool.

gradle如下排除依赖即可

compile ("org.apache.curator:curator-framework:4.0.0") {
            exclude group: 'org.apache.zookeeper', module: 'zookeeper'
 }

异常信息

com.alibaba.dubbo.rpc.RpcException: Failed to register dubbo://192.168.56.1:20881/xxx.xxx.service.UserService?anyhost=true&application=provider&dubbo=2.6.2&generic=false&interface=xxx.xxx.service.UserService&methods=saveUser&pid=6676&side=provider&timestamp=1532056521679 to zookeeper zookeeper://10.10.0.20:2181/com.alibaba.dubbo.registry.RegistryService?application=provider&dubbo=2.6.2&interface=com.alibaba.dubbo.registry.RegistryService&pid=6676&timestamp=1532056521671, cause: KeeperErrorCode = Unimplemented for /dubbo/xxx.xxx.service.UserService/providers/dubbo%3A%2F%2F192.168.56.1%3A20881%2Fxxx.xxx.service.UserService%3Fanyhost%3Dtrue%26application%3Dprovider%26dubbo%3D2.6.2%26generic%3Dfalse%26interface%3Dxxx.xxx.service.UserService%26methods%3DsaveUser%26pid%3D6676%26side%3Dprovider%26timestamp%3D1532056521679
    at com.alibaba.dubbo.registry.zookeeper.ZookeeperRegistry.doRegister(ZookeeperRegistry.java:116) ~[dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.registry.support.FailbackRegistry.retry(FailbackRegistry.java:315) [dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.registry.support.FailbackRegistry$1.run(FailbackRegistry.java:68) [dubbo-2.6.2.jar:2.6.2]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_171]
    at java.util.concurrent.FutureTask.runAndReset$$$capture(FutureTask.java:308) [?:1.8.0_171]
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java) [?:1.8.0_171]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_171]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_171]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_171]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_171]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_171]
Caused by: java.lang.IllegalStateException: KeeperErrorCode = Unimplemented for /dubbo/xxx.xxx.service.UserService/providers/dubbo%3A%2F%2F192.168.56.1%3A20881%2Fxxx.xxx.service.UserService%3Fanyhost%3Dtrue%26application%3Dprovider%26dubbo%3D2.6.2%26generic%3Dfalse%26interface%3Dxxx.xxx.service.UserService%26methods%3DsaveUser%26pid%3D6676%26side%3Dprovider%26timestamp%3D1532056521679
    at com.alibaba.dubbo.remoting.zookeeper.curator.CuratorZookeeperClient.createEphemeral(CuratorZookeeperClient.java:89) ~[dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.remoting.zookeeper.support.AbstractZookeeperClient.create(AbstractZookeeperClient.java:63) ~[dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.registry.zookeeper.ZookeeperRegistry.doRegister(ZookeeperRegistry.java:114) ~[dubbo-2.6.2.jar:2.6.2]
    ... 10 more
Caused by: org.apache.zookeeper.KeeperException$UnimplementedException: KeeperErrorCode = Unimplemented for /dubbo/xxx.xxx.service.UserService/providers/dubbo%3A%2F%2F192.168.56.1%3A20881%2Fxxx.xxx.service.UserService%3Fanyhost%3Dtrue%26application%3Dprovider%26dubbo%3D2.6.2%26generic%3Dfalse%26interface%3Dxxx.xxx.service.UserService%26methods%3DsaveUser%26pid%3D6676%26side%3Dprovider%26timestamp%3D1532056521679
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:103) ~[zookeeper-3.5.3-beta.jar:3.5.3-beta-8ce24f9e675cbefffb8f21a47e06b42864475a60]
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) ~[zookeeper-3.5.3-beta.jar:3.5.3-beta-8ce24f9e675cbefffb8f21a47e06b42864475a60]
    at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:1525) ~[zookeeper-3.5.3-beta.jar:3.5.3-beta-8ce24f9e675cbefffb8f21a47e06b42864475a60]
    at org.apache.curator.framework.imps.CreateBuilderImpl$17.call(CreateBuilderImpl.java:1189) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.framework.imps.CreateBuilderImpl$17.call(CreateBuilderImpl.java:1166) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.connection.StandardConnectionHandlingPolicy.callWithRetry(StandardConnectionHandlingPolicy.java:64) ~[curator-client-4.0.0.jar:?]
    at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:100) ~[curator-client-4.0.0.jar:?]
    at org.apache.curator.framework.imps.CreateBuilderImpl.pathInForeground(CreateBuilderImpl.java:1163) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.framework.imps.CreateBuilderImpl.protectedPathInForeground(CreateBuilderImpl.java:603) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:593) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:571) ~[curator-framework-4.0.0.jar:4.0.0]
    at org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:47) ~[curator-framework-4.0.0.jar:4.0.0]
    at com.alibaba.dubbo.remoting.zookeeper.curator.CuratorZookeeperClient.createEphemeral(CuratorZookeeperClient.java:86) ~[dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.remoting.zookeeper.support.AbstractZookeeperClient.create(AbstractZookeeperClient.java:63) ~[dubbo-2.6.2.jar:2.6.2]
    at com.alibaba.dubbo.registry.zookeeper.ZookeeperRegistry.doRegister(ZookeeperRegistry.java:114) ~[dubbo-2.6.2.jar:2.6.2]
ava.lang.IllegalStateException: Failed to register dubbo://192.168.3.111:20880/com.baosight.minmetals.api.repertory.service.CCVEhicleDataQuery?anyhost=true&application=Minmetals-logistics-system-service&background=false&deprecated=false&dispatcher=all&dubbo=2.0.2&dynamic=true&generic=false&interface=com.baosight.minmetals.api.repertory.service.CCVEhicleDataQuery&loadbalance=roundrobin&methods=queryBillSettleD,queryBillSettleM,queryTrackD,queryTrackM,updateBillSettle,updateTransCommission&payload=83886080&pid=11172&release=3.1.11&retries=0&revision=1.0&serialization=hessian2&serialize.check.status=DISABLE&service-name-mapping=true&side=provider&threadpool=cached&threads=1000&timeout=2400000&timestamp=1747977375046&version=1.0 to registry 127.0.0.1:2181, cause: Failed to register dubbo://192.168.3.111:20880/com.baosight.minmetals.api.repertory.service.CCVEhicleDataQuery?anyhost=true&application=Minmetals-logistics-system-service&background=false&deprecated=false&dispatcher=all&dubbo=2.0.2&dynamic=true&generic=false&interface=com.baosight.minmetals.api.repertory.service.CCVEhicleDataQuery&loadbalance=roundrobin&methods=queryBillSettleD,queryBillSettleM,queryTrackD,queryTrackM,updateBillSettle,updateTransCommission&payload=83886080&pid=11172&release=3.1.11&retries=0&revision=1.0&serialization=hessian2&serialize.check.status=DISABLE&service-name-mapping=true&side=provider&threadpool=cached&threads=1000&timeout=2400000&timestamp=1747977375046&version=1.0 to zookeeper zookeeper://127.0.0.1:2181/org.apache.dubbo.registry.RegistryService?application=Minmetals-logistics-system-service&dubbo=2.0.2&file=./xcx-service.properties&interface=org.apache.dubbo.registry.RegistryService&pid=11172&qos.enable=true&release=3.1.11&serialize.check.status=DISABLE, cause: KeeperErrorCode = Unimplemented for /dubbo
05-24
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值