ZkClient是一个开源的ZooKeeper客户端,是在原生的ZooKeeper API接口之上进行包装,是一个更易使用的ZooKeeper客户端。ZkClient在内部实现了Session超时重连、Watcher反复注册等功能,使得ZooKeeper客户端的繁琐细节对开发人员透明。
接下来,我们将从创建会话、创建节点、读取数据、更新数据、删除节点、检测节点等方面介绍ZkClient的使用。
1.会话创建、节点创建、获取子节点、删除节点
public class ZkClientTest {
public static void main(String[] args) throws IOException,InterruptedException {
//创建会话
ZkClient zkClient = new ZkClient("127.0.0.1:2181", 5000);
String path = "/zk-book";
//监测子节点变化
zkClient.subscribeChildChanges(path, new IZkChildListener() {
@Override
public void handleChildChange(String parentPath, List<String> currentChild)
throws Exception {
System.out.println(parentPath + " 's child changed ,currentChilds: " + currentChild);
}
});
//创建节点
zkClient.createPersistent(path);
Thread