1. 程式人生 > >zookeeper使用和原理探究 (注意linux下防火牆導致啟動失敗的坑,使用service iptables stop 關閉防火牆 使用service iptables status確認)

zookeeper使用和原理探究 (注意linux下防火牆導致啟動失敗的坑,使用service iptables stop 關閉防火牆 使用service iptables status確認)

//建立一個Zookeeper例項,第一個引數為目標伺服器地址和埠,第二個引數為Session超時時間,第三個為節點變化時的回撥方法
ZooKeeper zk =new ZooKeeper("127.0.0.1:2181"500000,new Watcher() {
           
// 監控所有被觸發的事件
publicvoid process(WatchedEvent event) {
           
//dosomething
           }
      }
);
//建立一個節點root,資料是mydata,不進行ACL許可權控制,節點為永久性的(即客戶端shutdown了也不會消失)
zk.create(
"/root""mydata".getBytes(),Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);

//在root下面建立一個childone znode,資料為childone,不進行ACL許可權控制,節點為永久性的
zk.create("/root/childone","childone".getBytes(), Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);

//取得/root節點下的子節點名稱,返回List<String>
zk.getChildren("/root",true);

//取得/root/childone節點下的資料,返回byte[]

zk.getData("/root/childone"truenull);

//修改節點/root/childone下的資料,第三個引數為版本,如果是-1,那會無視被修改的資料版本,直接改掉
zk.setData("/root/childone","childonemodify".getBytes(), -1);

//刪除/root/childone這個節點,第二個引數為版本,-1的話直接刪除,無視版本
zk.delete("/root/childone"-1);
      
//關閉session
zk.close();