第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java客戶端連接zookeeper集群時如何才能避開失效的服務器

java客戶端連接zookeeper集群時如何才能避開失效的服務器

慕運維8079593 2019-04-16 20:27:49
集群模式下,比如我有3個zookeeper服務器,分別是zk1,zk2,zk3,zookeeper兌現創(chuàng)建時連接串寫法是zk1:2181,zk2:2181,zk3:2181,按照zk的選舉算法,只要有超過半數的節(jié)點活著集群就能工作。但是如果這時客戶端剛開始初始化,但是zk1掛了,會使用zk1的服務器配置去創(chuàng)建連接,從而報連接被拒絕的異常以致啟動退出。這里有什么優(yōu)雅的方法能在啟動階段讓zookeeper自動避開已經失效的節(jié)點去選擇有效的節(jié)點去連接么?
查看完整描述

2 回答

?
神不在的星期二

TA貢獻1963條經驗 獲得超6個贊

找到一個辦法,由于zk的連接是異步創(chuàng)建的,可以在zookeeper對象new之后等待一下,同時判斷state是否為connected,上代碼:
if(!zk.getState().equals(States.CONNECTED)){
while(true){
if(zk.getState().equals(States.CONNECTED)){
break;
}
try{
TimeUnit.SECONDS.sleep(5);
}catch(InterruptedExceptione){
e.printStackTrace();
}
}
}
                            
查看完整回答
反對 回復 2019-04-16
?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

怎么不好好看文檔呢》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-04-16
  • 2 回答
  • 0 關注
  • 730 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號