标签:获取值 art lock 重入 time 相等 分布式部署 nbsp 功能
摘自:
https://www.cnblogs.com/seesun2012/p/9214653.html
1、CAP理论
任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)、分期容错性(Partition tolerance)最多同时只能满足两项。
2、分布式
思路:利用主键唯一的特性,如果有多个请求同时提交到数据库的话,数据库会保证只有一个操作可以成功,那么我们就可以认为操作成功的那个线程获得了该方法的锁,当方法执行完毕之后,想要释放锁的话,删除这条数据库记录即可。
上面这种简单的实现有以下几个问题:
上述问题的解决:
1、基于setnx(),expire()法
setnx()如果返回0则返回占位失败,如果返回1则占位失败。
expire()命令对lockkey设置超时时间,为的是避免死锁行为
执行完业务代码后可以通过delete来删除。
该方法存在死锁问题
2、setnx(),get(),getset()法
为了解决死锁问题,新方法
标签:获取值 art lock 重入 time 相等 分布式部署 nbsp 功能
原文地址:https://www.cnblogs.com/ylxn/p/10356422.html