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是一家美国公

zookeeper从3.5.0开始,增加一个AdminServer。 The AdminServerNew in 3.5.0: The Adm