2025-03-02 13:03:03
313
192
于是在这5个Master中,由于其中有一个是新切换过来的Master,所以只有2个Master是有客户端A加锁的数据,另外3个Master是没有锁的。即使大多数节点加锁成功,但如果加锁的累计耗时已超过锁的过期时间,那此时有些节点上的锁可能已经失效了,这个锁就没有意义了。所以释放锁时,不管之前有没有加锁成功,都需要释放所有节点的锁。这就是Redis作者在反驳中提到的:如果客户端已经拿到了锁,但客户端与锁服务器发生失联(例如GC),那不仅RedLock有问题,其它锁服务都有类似的问题,zk也是一样。
热门排行