浅谈分布式锁

来源:互联网 发布:淘宝怎么看卖家销量 编辑:程序博客网 时间:2024/06/11 09:11

数据库锁:

  • 优点:直接使用数据库,使用简单。

  • 缺点:分布式系统大多数瓶颈都在数据库,使用数据库锁会增加数据库负担。

缓存锁:

  • 优点:性能高,实现起来较为方便,在允许偶发的锁失效情况,不影响系统正常使用,建议采用缓存锁。

  • 缺点:通过锁超时机制不是十分可靠,当线程获得锁后,处理时间过长导致锁超时,就失效了锁的作用。

zookeeper锁:

  • 优点:不依靠超时时间释放锁;可靠性高;系统要求高可靠性时,建议采用zookeeper锁。

  • 缺点:性能比不上缓存锁,因为要频繁的创建节点删除节点。