java Apache Curator分布式锁
我知道Apache Curator可以在zookeeper的基础上实现分布式锁功能。基于Apache策展人官方网站上发布的文档,它看起来非常易于使用。例如:
RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000, 3);
CuratorFramework client = CuratorFrameworkFactory.newClient("host:ip",retryPolicy);
client.start();
InterProcessSemaphoreMutex lock = new InterProcessSemaphoreMutex(client, path);
if(lock.acquire(10, TimeUnit.SECONDS))
{
try { /*do something*/ }
finally { lock.release(); }
}
但“进程间信号量emutex”的第二个参数“path”是什么意思?它的意思是基于API的“锁的路径”,但它到底是什么?谁能给我举个例子吗
如果我有数百万个锁,我需要创建数百万个“通往锁的路径”吗?zookeeper集群的最大锁数(znode)有限制吗?或者我们可以在进程释放锁时移除它吗
# 1 楼答案
关于收割者的一些例子
Java Code Examples for org.apache.curator.framework.recipes.locks.Reaper