深入探讨分布式锁安全性与Redlock算法应用.pdfVIP

  • 0
  • 0
  • 约1.59千字
  • 约 4页
  • 2026-04-30 发布于北京
  • 举报

深入探讨分布式锁安全性与Redlock算法应用.pdf

拓展3:拾遗漏补——再谈分布

式锁

在第三节,我们细致讲解了分布式锁的原理,它的使⽤⾮常简单,⼀

条指令就可以完成加锁操作。不过在集群环境下,这种⽅式是有

的,它不是绝对安全的。

⽐如在Sentinel集群中,主节点挂掉时,从节点会取⽽代之,客户

端上却并没有明显感知。原先第⼀个客户端在主节点中申请成功了⼀

把锁,但是这把锁还没有来得及同步到从节点,主节点突然挂掉了。

然后从节点变成了主节点,这个新的节点没有这个锁,所以当另

⼀个客户端过来请求加锁时,⽴即就批准了。这样就会导致系统中同

样⼀把锁被两个客户端同时持有,不安全性由此产⽣。

不过这种不安全也仅仅是在主从发⽣failover的情况下才会产⽣,

⽽且持续时间极短,业务系统多数情况下可以。

Redlock算法

为了解决这个问题,Antirez发明了Redlock算法,它的流程⽐较

复杂,不过已经有了很多开源的library做了良好的封装,⽤户可以

拿来即⽤,⽐如redlock-py。

importredlock

addrs=[{

host:localhost,

port:6379,

db:0

},{

host:localhost,

port:6479,

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档