测试服务器

在Curator测试子模型中,提供了TestingServer类。 该类创建一个本地的进程中的ZooKeeper服务器,可用于测试。

测试集群

在Curator测试子模型中,提供了TestingCluster类。 这个类创建了一个内部运行的ZooKeeper服务器集合。

ZKPaths

各种静态方法帮助使用ZooKeeper ZNode路径:

  1. getNodeFromPath:给定一个完整路径,返回节点名称。 即“/ one / two / three”将返回“三”

  2. mkdirs:确保创建路径中的所有节点。

  3. getSortedChildren:返回按序列号排序的给定路径的子项

  4. makePath:给定父路径和子节点,创建一个组合的完整路径

Curator的锁使用Java 7的试用资源功能,使Curator锁更安全:

InterProcessMutex mutex = new InterProcessMutex(...) // or any InterProcessLock
try ( Locker locker = new Locker(mutex, maxTimeout, unit) )
{
   // do work
}

BlockingQueueConsumer

请参阅:DistributedQueue和DistributedPriorityQueue

提供与JDK的BlockingQueue类似的行为的队列消费者。

QueueSharder

由于ZooKeeper传输层的限制,如果一个队列中有超过10K的条目,则单个队列将会中断。 这个类在多个分布式队列中提供了一个立面。 它监视队列,如果其中任何一个超过阈值,则添加新的队列。 Puts分布在队列中。

WatcherRemoveCuratorFramework

Curator有一个实用工具,可以轻松设置观察者,并在以后删除它们。 它用于所有Curator食谱。 从CuratorFramework实例,调用newWatcherRemoveCuratorFramework()。 使用此代理实例时,将记录所有设置的观察者。 然后可以调用removeWatchers()来删除这些观察者。 有关使用细节,请参阅Curator源代码。