2024年大数据最新图解curator如何实现zookeeper分布式锁_curator 锁(3)

  • 三、Zookeeper分布式锁概述
    • 1、Zookeeper分布式锁实现思路
      • 2、Zookeeper分布式锁解决的问题
      • 3、Zookeeper分布式锁优缺点?
  • 四、InterProcessMute实现分布式锁原理
    • 1、加锁流程(acquire()方法)
        • 0)加锁流程图
          • 1)internalLock()
            • LockData
              • internalLock()方法逻辑
          • 2)LockInternals#attemptLock() --> 尝试加锁
            • 1> StandardLockInternalsDriver#createsTheLock() --> 创建临时有序节点
              • 2> 判断刚创建的锁路径是否为第一个节点
          • 3)监听器的运作
      • 2、解锁流程(release()方法)
        • 0)解锁流程图
          • 1)文字描述
  • 五、总结
    • 网络IO次数

一、前言

更多内容见Zookeeper专栏:https://blog.csdn.net/saintmm/category_11579394.html

至此,Zookeeper系列的内容已出:

1.zookeeper集群搭建
2. Zookeeper集群选举机制
3. Paxos算法解析
4. Zookeeper(curator)实现分布式锁案例

紧接着上一篇的内容,从源码层面来看curator是如何实现zookeeper分布式锁的?

二、curator分布式锁种类

curator提供了四种分布式锁,都实现自接口InterProcessLock

JAVA-doc:https://curator.apache.org/apidocs/org/apache/curator/framework/recipes/locks/package-summary.html

1> InterProcessMutex

  • 可重入排它锁,每成功加锁一次,就要解锁一次。

2> InterProcessSemaphoreMutex

  • 不可重入排他锁

你可能感兴趣的:(程序员,分布式,大数据,zookeeper)