Redis & ZooKeeper分布式锁实现的对比
Redis分布式锁,需要自己不断去尝试获取锁,比较消耗性能
而ZooKeeper分布式锁,获取不到锁,注册个监听器即可,不需要不断主动尝试获取锁,性能开销较小
如果Redis获取锁的那个客户端挂了,那么只能等待超时时间之后才能释放锁
而对于ZooKeeper,因为创建的是临时znode,只要客户端挂了,znode就没了,此时就自动释放锁
Redis分布式锁大家没发现好麻烦吗?遍历上锁,计算时间等等
ZooKeeper的分布式锁语义清晰实现简单
所以实践认为ZooKeeper的分布式锁比Redis的分布式锁牢靠、而且模型简单易用