为了账号安全,请及时绑定邮箱和手机立即绑定

java客户端连接zookeeper集群时如何才能避开失效的服务器

java客户端连接zookeeper集群时如何才能避开失效的服务器

慕妹3146593 2019-03-30 11:31:33
集群模式下,比如我有3个zookeeper服务器,分别是zk1,zk2,zk3,zookeeper兑现创建时连接串写法是zk1:2181,zk2:2181,zk3:2181,按照zk的选举算法,只要有超过半数的节点活着集群就能工作。但是如果这时客户端刚开始初始化,但是zk1挂了,会使用zk1的服务器配置去创建连接,从而报连接被拒绝的异常以致启动退出。这里有什么优雅的方法能在启动阶段让zookeeper自动避开已经失效的节点去选择有效的节点去连接么?
查看完整描述

1 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

怎么不好好看文档呢》Tocreateaclientsessiontheapplicationcodemustprovideaconnectionstringcontainingacommaseparatedlistofhost:portpairs,eachcorrespondingtoaZooKeeperserver(e.g."127.0.0.1:4545"or"127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002").TheZooKeeperclientlibrarywillpickanarbitraryserverandtrytoconnecttoit.Ifthisconnectionfails,oriftheclientbecomesdisconnectedfromtheserverforanyreason,theclientwillautomaticallytrythenextserverinthelist,untilaconnectionis(re-)established.
另外你知道zk有个玩意叫watcher吗,自己检测连接也是逗
                            
查看完整回答
反对 回复 2019-03-30
  • 1 回答
  • 0 关注
  • 406 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号