八、ZooKeeper 分布式锁案例

ZooKeeper 分布式锁案例

什么叫做分布式锁呢?

比如说 “进程1” 在使用该资源的时候,会先去获得锁,"进程 1"获得锁以后会对该资源保持独占,这样其他进程就无法访问该资源,"进程 1"用完该资源以后就将锁释放掉,让其他进程来获得锁,那么通过这个锁机制,我们就能保证了分布式系统中多个进程能够有序的访问该临界资源。

那么我们把这个分布式环境下的这个锁叫作分布式锁。

分布式锁案例分析:

客户端访问集群,客户端访问,常见临时的带序号的节点,序号最小的拿到资源(加锁),走业务逻辑,解锁就是删除改节点。

所以每个客户端创建的节点都会判断自己是不是序号最小的节点,如果不是就监听其前一个节点。
在这里插入图片描述

1、原生 Zookeeper 实现分布式锁案例

1.1、分布式锁实现
测试类,主要模拟十个线程进行抢占锁资源

import com.msb.zookeeper.config

猜你喜欢

转载自blog.csdn.net/qq_37200262/article/details/125174194