Zookeeper 編程

zookeeper提供了兩種語言的api解孙,一種是java的一種是c的,這里我們學(xué)習(xí)java api, c語言的api接口和java的結(jié)構(gòu)是一樣的。
在使用之前首先我們需要將用到的jar包放到classpath以方便編程。
這里通過運行bin/zkEnv.sh 即可將所有jar全部加入到CLASSPATH里面

. $PATH_TO_ZK/bin/zkEnv.sh
vagrant@vagrant-ubuntu-trusty-64:~$ echo $CLASSPATH
/usr/bin/../zookeeper-server/target/classes:/usr/bin/../build/classes:/usr/bin/../zookeeper-server/target/lib/*.jar:/usr/bin/../build/lib/*.jar:/usr/bin/../lib/*.jar:/usr/bin/../zookeeper-*.jar:/usr/bin/../zookeeper-server/src/main/resources/lib/*.jar:/usr/bin/../etc/zookeeper:.:/usr/lib/jvm/java-11-oracle/lib:/usr/lib/jvm/java-11-oracle/lib/tools.jar

zookeeper客戶端和服務(wù)器通過建立連接,創(chuàng)建sesssion來交互

Zookeeper zk = new ZooKeeper(hostPort, 15000, log::info);

其中第一個參數(shù)為server的ip和端口號棚潦,如127.0.0.1:2181
第二個參數(shù)為session失效時間,單位為ms, 當(dāng)ZooKeeper在指定的時間(15s)無法和client連接是膝昆,就會認(rèn)為連接失效丸边。
第三個參數(shù)是一個Watcher,用來獲取并處理session相關(guān)的event荚孵。接口如下妹窖,只有一個方法,所以這里我們直接用了一個lambda表達(dá)式來表示它收叶。

public interface Watcher {
    void process(WatchedEvent event);
}

我們再ZooKeeper basic里面介紹的那些客戶端命令骄呼,都有對應(yīng)的API實現(xiàn)版本,同步版和異步版判没,都有蜓萄。
我們寫代碼的時候通常是使用異步版,因為它更好效澄峰,也不要我們來處理很多異常嫉沽,代碼也更簡潔。所以這里我們只介紹異步版實現(xiàn)俏竞。

  • 創(chuàng)建節(jié)點
void create(String path,    byte[] data,    List<ACL> acl,   
 CreateMode createMode,    AsyncCallback.StringCallback cb,     Object ctx)

zk.create("/master", serverId.getBytes(), OPEN_ACL_UNSAFE,
                CreateMode.EPHEMERAL, this::masterCreateCallback, null);

第一個參數(shù)為要創(chuàng)建znode的路徑绸硕,znode的數(shù)據(jù), 第三個參數(shù)為認(rèn)證方式魂毁, 第四個參數(shù)是創(chuàng)建模式玻佩, 第五個參數(shù)是回調(diào)函數(shù),第六個參數(shù)是回調(diào)函數(shù)的參數(shù)席楚。
我這里提供了一個demo程序大家可以參考咬崔,來學(xué)習(xí)這些api的使用,看代碼更容易理解 git地址如下烦秩,
大家可以git clone https://github.com/Jaler-Wang/ZooKeeperDemo.git
獲取刁赦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市闻镶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌丸升,老刑警劉巖铆农,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡墩剖,警方通過查閱死者的電腦和手機猴凹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來岭皂,“玉大人郊霎,你說我怎么就攤上這事∫妫” “怎么了书劝?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長土至。 經(jīng)常有香客問我购对,道長,這世上最難降的妖魔是什么陶因? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任骡苞,我火速辦了婚禮,結(jié)果婚禮上楷扬,老公的妹妹穿的比我還像新娘解幽。我一直安慰自己,他們只是感情好烘苹,可當(dāng)我...
    茶點故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布躲株。 她就那樣靜靜地躺著,像睡著了一般螟加。 火紅的嫁衣襯著肌膚如雪徘溢。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天捆探,我揣著相機與錄音然爆,去河邊找鬼。 笑死黍图,一個胖子當(dāng)著我的面吹牛曾雕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播助被,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼剖张,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了揩环?” 一聲冷哼從身側(cè)響起搔弄,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎丰滑,沒想到半個月后顾犹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年炫刷,在試婚紗的時候發(fā)現(xiàn)自己被綠了擎宝。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,745評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡浑玛,死狀恐怖绍申,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情顾彰,我是刑警寧澤极阅,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站拘央,受9級特大地震影響涂屁,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜灰伟,卻給世界環(huán)境...
    茶點故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一拆又、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧栏账,春花似錦帖族、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至茶鹃,卻和暖如春涣雕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背闭翩。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工挣郭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人疗韵。 一個月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓兑障,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蕉汪。 傳聞我的和親對象是個殘疾皇子流译,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 編輯| 考文學(xué) 排版 | 考文學(xué) 一、名詞解釋 1者疤、宋初三體:一以當(dāng)時的一些達(dá)官貴人如徐鉉福澡、李昉等為代表,以白居易...
    考文學(xué)閱讀 716評論 0 1
  • iOS10驹马,首先需要滿足相關(guān)權(quán)限: 類型: 具體代碼:
    醬油之神閱讀 351評論 0 1
  • 正則:正規(guī)表達(dá)式 用來處理字符串單字符匹配 . 除換行之外的任意字符\d 表示數(shù)字\D 匹配非數(shù)字\w 匹配單詞...
    Forever_f59e閱讀 362評論 0 0
  • 余年過韶華竞漾,端曉靜眯搭,性爾雅,行慎言微业岁,與宵小無爭,得失不計寇蚊。 喜弄墨彈文笔时,所暇皆頃其中,乃嘗效先人仗岸,自號康名曰晴允耿。...
    康晴閱讀 3,978評論 8 13
  • 都知道今天是女神節(jié),對于我們這種遵紀(jì)守法的公司節(jié)假日還是可以享受的扒怖,以前經(jīng)常因為比較忙休不成较锡,今天其實還好,按理...
    云沐媽媽閱讀 158評論 0 0