https://juejin.cn/post/7258863572553531447

分布式锁,当我们请求一个分布式锁的时候,成功了,但是这时候 slave 还没有复制我们的锁,但是 master 节点挂了,我们的应用继续请求锁的时候,会从继任了 master 的原 slave 上申请,也会成功。

这个就会导致,同一个锁被获取了不止一次,Redis 中针对此种情况,引入了红锁的概念。

红锁的设计思想是利用 Redis 的原子性操作和分布式特性来实现可靠的分布式锁。它的实现基于多个独立 Redis 节点之间的协作,确保在大多数 Redis 节点可用的情况下获得锁,并通过超时机制避免死锁。