本篇内容主要讲解“Curator提供的分布式锁怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Curator提供的分布式锁怎么用”吧!
Curator 提供的分布式锁用法,很简单:
package curator.lock;
import org.apache.curator.RetryPolicy;
import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.CuratorFrameworkFactory;
import org.apache.curator.framework.recipes.locks.InterProcessMutex;
import org.apache.curator.retry.ExponentialBackoffRetry;
public class InterProcessMutexDemo {
public static void main(String[] args) {
RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000, 3);
final CuratorFramework client = CuratorFrameworkFactory.builder().connectString("127.0.0.1:2181").sessionTimeoutMs(5000).connectionTimeoutMs(10000).retryPolicy(retryPolicy).namespace("text").build();
client.start();
InterProcessMutex lock = new InterProcessMutex(client,"/lock");
try {
lock.acquire();
System.err.println("生成订单号");
Thread.currentThread().sleep(5000L);
} catch (Exception e) {
} finally {
try {
lock.release();
} catch (Exception e) {
e.printStackTrace();
}
}
try {
lock.acquire();
System.err.println("生成订单号");
Thread.currentThread().sleep(Long.MAX_VALUE);
} catch (Exception e) {
} finally {
try {
lock.release();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
到此,相信大家对“Curator提供的分布式锁怎么用”有了更深的了解,不妨来实际操作一番吧!这里是天达云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!