Curator之TreeCache
阅读数:164 评论数:0
跳转到新版页面分类
python/Java
正文
这个类会监控ZK的一个路径,路径下所有的节点变化,数据变动都会被响应,可以通过注册自定义监听器来添加逻辑。
关键API
org.apache.curator.framework.recipes.cache.TreeCache
org.apache.curator.framework.recipes.cache.TreeCacheListener
org.apache.curator.framework.recipes.cache.TreeCacheEvent
org.apache.curator.framework.recipes.cache.ChildData
TreeCache内部是一个树结构,所以有一个内部类TreeCache.TreeNode封装树节点信息。
用法
1、创建
public TreeCache(CuratorFramework client,
String path)
2、使用
在使用前需要调用start();用完之后需要调用close()方法。随时都可以调用getCurrentData()获取当前缓存的状态和数据,也可以通过getListenable()获取监听器,并在此基础上增加自定义监听器
public void addListener(NodeCacheListener listener)
对比项 | Path Cache | Node Cache | Tree Cache |
---|---|---|---|
缓存数量 | 多个 | 单个 | 多个 |
使用 | 管理着一组缓存,类似一个CacheManager | 单个name的缓存 | 有层级关系的CacheManager |
机制 | 状态机,事件驱动(对重复操作进行过滤),单线程,任务队列 | 状态机,回调驱动 | 状态机,单线程,事件驱动,使用任务计数器跟踪 |
相关推荐
一、概述
Curator是Netflix公司开源一套Zookeeper客户端框架,它对Zookeeper原生API进行了封装,还提供了一些应用场景。
1、netflix公司
Netflix是一家美国公