实现分布式锁需要注意的问题

(一) 实现分布式锁需要注意的问题

  1. 数据库乐观锁     =>  提交的时候才去锁定,  根据版本进行冲突检测
  2. 基于Redis的分布式锁
  3. 基于Zookeeper的分布式锁

(二)Redis 分布式锁

  为确保分布式锁可用,只少满足以下四个条件

  1  互斥性      =>   任意时刻,只有一个客户端持有锁

  2  不会发生死锁      =>   即使一个客户端持有锁后没有释放锁,也能保证后续其他客户端能加锁

  3  具有容错性          =>   只要大部分Redis节点正常运行,客户端就能加锁,解锁

  4  加锁解锁必须是同一个客户端


    特别特

原文地址:https://www.cnblogs.com/misscai/p/14449060.html