zookeeper中的事件监听--cache篇
最近有接触zookeeper,有用到一部分的功能,所以在这里简单记录一下:
Curator中事件的监听
原生zookeeper的事件监听采用Watcher实现,不过Watcher监听是一次性的,如果需要继续监听该事件,必须重新注册。
Curator中采用cache来封装了对事件的监听,在包org.apache.curator.framework.recipes.cache封装了3种类型的事件监听。
cache 分为三种(其实就是从不同的维度去解析cache):
1.PathChildrenCache cache 监听某一个path,一个znode的子节点
2.node cache 监听某一个node
3.tree cache 监听节点以及子节点的状态,监控整个树中的节点
通过addListener添加事件监听,监听变化,提供接口以方便实现者做出相关改变。
例子见:
http://colobu.com/2014/12/15/zookeeper-recipes-by-example-5/
http://090508tanjie.iteye.com/blog/2288256
http://my.oschina.net/jiangzhixiong/blog/537706