Zookeeper基于Java访问-节点事件监听

Watcher监听机制是Zookeeper中非常重要的特性,我们基于zookeeper上创建的节点,可以对这些节点绑定监听事件,比如可以监听节点数据变更、节点删除、子节点状态变更等事件,通过这个事件机制,可以基于zookeeper实现分布式锁、集群管理等功能

watcher机制有一个特性:当数据发生改变的时候,那么zookeeper会产生一个watch事件并发送到客户端,但是客户端只会收到一次这样的通知,如果以后这个数据再发生变化,那么之前设置watch的客户端不会再次收到消息。因为他是一次性的;如果要实现永久监听,可以通过循环注册来实现

curator对节点事件监听提供了很完善的api,接下来简单演示一下curator事件监听的基本使用

 
	org.apache.curator 
	curator-recipes 
	4.0.0 
 

Curator提供了三种Watcher来监听节点的变化

. PathChildCache:监视一个路径下孩子结点的创建、删除、更新。

. NodeCache:监视当前结点的创建、更新、删除,并将结点的数据缓存在本地。 

. TreeCache:PathChildCache和NodeCache的“合体”,监视路径下的创建、更新、删除事件,并缓存路径下所有孩子结点的数据。

 

你可能感兴趣的:(Zookeeper基于Java访问-节点事件监听)