美文网首页
分布式锁

分布式锁

作者: 温不胜_kangle | 来源:发表于2020-05-25 09:49 被阅读0次

    一、分布式锁

    分布式锁是指在跨进程、跨服务器、跨网络的情况下对共享资源的互斥访问,保证数据一致性。

    二、zookeeper实现分布式锁

    1、zookeeper上的locker节点创建子节点node_now

    2、获取locker节点上的所有子节点,并排序

    3、判断当前节点是否是最小的节点,是:当前进程获取了分布式锁;否:找到最小的节点,事件监听,获取锁

    三、redis实现分布式锁

    使用Redisson框架,实现分布式锁。

    Redisson框架的原理:

        1、使用Hash计算获取一台cluster资源

        2、使用setnx尝试加锁,返回1,则加锁成功,返回0则失败

        3、加锁成功:会有watcher线程定时检查当前进程是否仍在持有锁,持有的话会将key的存活时间延长

        4、加锁失败:while循环,一直在尝试获取锁

    参考:

    https://blog.csdn.net/u011191463/article/details/78658036

    https://blog.csdn.net/shuangyueliao/article/details/89344256

    相关文章

      网友评论

          本文标题:分布式锁

          本文链接:https://www.haomeiwen.com/subject/dmpeahtx.html