监听器
客户端注册监听关心的目录节点,当目录节点发生变化(数据改变,节点删除,子目录节点新增删除等),zk会通知客户端.监听机制保证了zk保存和任何数据的变化都能快速响应到监听该节点的应用程序
监听器原理
- main线程中创建zk客户端
- 此时会创建2个线程,一个负责网络连接通信(connect),一个负责监听listener
- 通过connect线程将注册监听事件发送给zk
- 在zk的注册监听器列表中将注册的监听事件添加到列表中
- zk监听到有数据或者路径的变化,就会将这个消息发送给listener线程
- listener线程内部调用process方法来处理数据的改变
-
监听值变化 每次使用命令只能监听一次,想再次监听必须再次注册 get -w /test
-
监听路径节点变化 ls -w /test