当前位置: 首页 > news >正文

zookeeper监听集群节点的实现zkclient组件实现方案(Java版)

ZooKeeper Watcher 机制
ZooKeeper Watcher 机制

  1. client 向zookeeper 注册监听
  2. client注册的同时会存储一个WatchManager对象
  3. 向zookeeper发生改变则notification client 并发送一个WatchManager对象,然后client再更新该对象
package com.jacky.zk.demo;import org.I0Itec.zkclient.IZkChildListener;
import org.I0Itec.zkclient.ZkClient;import java.util.List;/*
* 使用监听器
* */
public class Get_child {public static void main(String[] args) throws InterruptedException {//    获取到zkClientfinal ZkClient zkClient= new ZkClient("127.0.0.1:2181");//    zkClient 对指定目录进行监听(不存在的目录)/*ps: 可以监听的事件类型:NodeCreated:当ZNode被创建时触发。NodeDeleted:当ZNode被删除时触发。NodeDataChanged:当ZNode的数据内容发生改变时触发。NodeChildrenChanged:当ZNode的子节点列表发生更改时触发(添加或删除子节点)。ConnectionStateChanged:与ZooKeeper服务器的连接状态发生变化时触发。   * */zkClient.subscribeChildChanges("/zk-jk", new IZkChildListener() {//  回调@Overridepublic void handleChildChange(String s, List<String> children) throws Exception {System.out.println("error"+children);}});zkClient.createPersistent("/zk-jk");Thread.sleep(2000);zkClient.createPersistent("/zk-jk/cls-jk");Thread.sleep(2000);zkClient.deleteRecursive("/zk-jk/cls-jk");Thread.sleep(2000);zkClient.delete("/zk-jk");Thread.sleep(Integer.MAX_VALUE);}
}
http://www.lryc.cn/news/331234.html

相关文章:

  • 【ArduinoQuartus】在小脚丫STEP CYC10上安装PulseRain Reindeer并在软核上运行基础功能
  • 【电路笔记】-逻辑与门
  • 蓝桥杯练习——拼出一个未来
  • stm32f103c8t6学习笔记(学习B站up江科大自化协)-SPI
  • 云计算的安全需求
  • 【C++】编程规范之表达式原则
  • Python人工智能基础知识:理解神经网络与机器学习的基本概念
  • 10_MVC
  • 【Java多线程(4)】案例:设计模式
  • 时序预测 | Matlab实现CPO-BiLSTM【24年新算法】冠豪猪优化双向长短期记忆神经网络时间序列预测
  • java面试题(4)|Spring和Spring Boot之间有什么关联和区别
  • Spring Boot中前端通过请求接口下载后端存放的Excel模板
  • 构建企业级微服务平台:实现可扩展性、弹性和高效性
  • 存内计算技术在边缘计算、物联网设备中的应用及前景
  • C#使用Selenium驱动Chrome浏览器
  • 【软件工程】详细设计(二)
  • 数据质量决定大模型能力,景联文科技提供高质量大模型数据
  • 大话设计模式之状态模式
  • 【机器学习】“强化机器学习模型:Bagging与Boosting详解“
  • 《QT实用小工具·九》设备按钮控件
  • 计算机服务器中了helper勒索病毒怎么办,helper勒索病毒解密流程步骤
  • qT 地图显示飞机轨迹
  • 智慧展览馆:基于AI智能识别技术的视频智慧监管解决方案
  • Linux实用性脚本 [bash]
  • Key exchange failed.No compatible key exchange method.
  • 【FAQ】HarmonyOS SDK 闭源开放能力 —Asset Store Kit
  • arm架构离线部署docker
  • SpringBoot(48)-使用 SkyWalking 进行分布式链路追踪
  • JS实现双向数据绑定的三种方式
  • Bash相关