集群模式下,比如我有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吗,自己检测连接也是逗
添加回答
举报
0/150
提交
取消