首页 > 其他 > 详细

分布式协调与同步之分布式锁

时间:2020-02-11 13:56:15      阅读:110      评论:0      收藏:0      [点我收藏+]

分布式锁的实现方式

数据库

    实现方式: 创建一张锁表对临界资源做唯一约束,锁住资源时增加一条记录,释放时删除该记录

    优点:容易理解

    缺点:容易出现单点故障,死锁等问题,实现复杂,性能低可靠性低

    应用场景:并发量低,性能要求低的场景

redis缓存

    实现方式:setnx,或者采用官方推荐的方式https://redis.io/topics/distlock

    优点:性能高,无单点故障问题,易于实现

    缺点:锁失效时间的控制不稳定,可靠性不如zookeeper

    应用场景:并发量要求高,性能要求高的场景

zookeeper

    实现方式:为每个进程创建一个临时顺序节点,编号最小的获得锁

    优点:无单点故障,不可重入,死锁等问题,可靠性高,易于实现

    缺点:性能不如缓存分布式锁好

    应用场景:适用于大部分场景,不适用于性能要求极高的场景

分布式协调与同步之分布式锁

原文:https://www.cnblogs.com/battlescars/p/distributed_lock.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!