实现分布式锁有三种方式
1. redis。 setNX 存在则会返回0, 不存在
2. 数据方式去实现
创建一个表, 通过索引唯一的方式
create table (id , methodname …) methodname增加唯一索引
insert 一条数据XXX delete 语句删除这条记录
mysql for update
3. zookeeper实现排他锁 利用临时有序节点的特性和watcher来实现 代码如下所示:




运行main函数得到结果如下图所示:

本文介绍了三种实现分布式锁的方法:使用Redis的setNX指令、通过数据库唯一索引的方式以及利用Zookeeper的临时有序节点特性。每种方法都有其适用场景。
3. zookeeper实现排他锁 利用临时有序节点的特性和watcher来实现 代码如下所示:




运行main函数得到结果如下图所示:


被折叠的 条评论
为什么被折叠?