已解决
Java客户端_zkclient库操作Zookeeper
来自网友在路上 164864提问 提问时间:2023-09-26 18:44:36阅读次数: 64
最佳答案 问答题库648位专家为你答疑解惑
使用zookeeper遇到问题:
- 重复注册watcher
- session失效重连
- 异常处理(删除节点不能有子节点,新增节点必须有父节点等)
zkclient是Github上一个开源的Zookeeper客户端,在Zookeeper原生 API接口之上进行了包装,是一个更加易用的Zookeeper客户端。同时Zkclient在内部实现了诸如Session超时重连,Watcher反复注册等功能,从而提高开发效率。
添加依赖
<dependency><groupId>com.101tec</groupId><artifactId>zkclient</artifactId><version>0.10</version>
</dependency>
创建会话
String connStr = "192.168.154.128:2181";
ZkClient zk = new ZkClient(connStr);
创建节点
String res = zk.create("/root", "hgy", CreateMode.PERSISTENT);
修改节点数据
zk.writeData("/root", "hgy");
获取节点数据
String res = zk.readData("/root");
删除节点
zk.delete("/root");
注册数据监听
zk.subscribeDataChanges("/root/ghz", new IZkDataListener() {@Overridepublic void handleDataDeleted(String arg0) throws Exception {System.err.println("数据删除:" + arg0);}@Overridepublic void handleDataChange(String arg0, Object arg1) throws Exception {System.err.println("数据修改:" + arg0 + "------" + arg1);}});
注册节点监听
zk.subscribeChildChanges("/root", (arg0, arg1) -> {System.err.println("子节点发生变化:" + arg0);arg1.forEach(f -> {System.out.println("content:" + f);});});
查看全文
99%的人还看了
相似问题
- 〖大前端 - 基础入门三大核心之JS篇㊲〗- DOM改变元素节点的css样式、HTML属性
- Java 算法篇-链表的经典算法:判断回文链表、判断环链表与寻找环入口节点(“龟兔赛跑“算法实现)
- 代码随想录二刷 | 链表 | 删除链表的倒数第N个节点
- 节点导纳矩阵
- bhosts 显示节点 “unreach“ 状态
- 电子电器架构 —— 车载网关边缘节点总线转换
- 〖大前端 - 基础入门三大核心之JS篇㊳〗- DOM访问元素节点
- 第四天||24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II
- CS224W5.1——消息传递和节点分类
- Vue报错解决Error in v-on handler: “Error: 无效的节点选择器:#div1“
猜你感兴趣
版权申明
本文"Java客户端_zkclient库操作Zookeeper":http://eshow365.cn/6-14111-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!