zookeeper-3.4.9.tar.gz
解壓zookeeper-3.4.9.tar.gz
将/opt/zookeeper-3.4.9/conf/zoo_sample.cfg複制為/opt/zookeeper-3.4.9/conf/zoo.cfg
建立目錄:/opt/zookeeper-3.4.9/data
修改/opt/zookeeper-3.4.9/conf/zoo.cfg檔案
建立服務端工程:
引入依賴:
Spring配置檔案:
配置檔案:
ZooKeeper=檔案系統+通知機制
檔案系統:ZooKeeper使用樹形結構管理資料。而且以“/”作為樹形結構的根節點。
通知機制:用ZooKeeper的通知機制後,各個子產品工程在特定znode上設定Watcher(觀察者)來監控目前節點上值的變化。一旦Watcher檢測到了資料變化就會立即通知子產品工程,進而自動實作“一處修改,處處生效”的效果。
常用指令:
czxid:引起這個znode建立的zxid,建立節點的事務的zxid(ZooKeeper Transaction Id)
ctime:znode被建立的毫秒數(從1970年開始)
mzxid:znode最後更新的zxid
mtime:znode最後修改的毫秒數(從1970年開始)
pZxid:znode最後更新的子節點zxid
cversion:znode子節點變化号,znode子節點修改次數
dataversion:znode資料變化号
aclVersion:znode通路控制清單的變化号
ephemeralOwner:如果是臨時節點,這個是znode擁有者的session id。如果不是臨時節點則是0。
dataLength:znode的資料長度
numChildren:znode子節點數量
ruok:測試服務是否處于正确狀态。如果确實如此,那麼服務傳回“imok ”,否則不做任何響應
stat:輸出關于性能和連接配接的用戶端的清單
conf:輸出相關服務配置的詳細資訊
cons:列出所有連接配接到伺服器的用戶端的完全的連接配接 /會話的詳細資訊。包括“接受 / 發送”的包數量、會話id 、操作延遲、最後的操作執行等等資訊
dump:列出未經處理的會話和臨時節點
envi:輸出關于服務環境的詳細資訊(差別于conf指令)
reqs:列出未經處理的請求
wchs:列出伺服器watch的詳細資訊
wchc:通過session列出伺服器watch的詳細資訊,它的輸出是一個與watch相關的會話的清單
wchp:通過路徑列出伺服器 watch的詳細資訊。它輸出一個與 session相關的路徑
依賴資訊:
Java操作代碼:
測試使用代碼:

代碼實作: