ZooKeeper的分布式锁---客户端命令行测试(实操课程)

本系列是zookeeper相关的实操课程,课程测试环环相扣,请按照顺序阅读测试来学习zookeeper。阅读本文之前,请先阅读----​​​​​​zookeeper 单机伪集群搭建简单记录(实操课程系列)。

 阅读本文之前,请先阅读----​​​​​​zookeeper 单机伪集群搭建简单记录(实操课程系列)zookeeper 客户端常用命令简单记录(实操课程系列--watcher功能测试)(发布订阅功能测试)。

1、使用连接到2181的客户端,创建临时节点,执行命令:create -e /jike/keeper sssss

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第1张图片

2、使用连接到2182的客户端,创建临时节点,使用连接到2183的客户端,创建临时节点,执行命令:create -e /jike/keeper sssss

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第2张图片

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第3张图片

3、退出2181客户端,2182和2183查看jike节点的子节点,执行命令 ls /jike.能看到keeper节点已经消失了。

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第4张图片

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第5张图片

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第6张图片

4、在2182客户端创建keeper临时节点,执行命令:create -e /jike/keeper sssss。能正常的创建成功。再去2183客户端执行命令,发现创建失败。

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第7张图片

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第8张图片

5、这时候在2181客户端和2183客户端能查看到临时节点keeperr。

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第9张图片

ZooKeeper的分布式锁---客户端命令行测试(实操课程)_第10张图片

6、通过反复测试,能发现,多个客户端只能有一个创建节点成功。客户端退出,节点消失。在zk中有一个唯一的临时节点,只有拿到节点的才可以操作数据,没拿到的线程就需要等待。这就是分布式锁的实现原理。

你可能感兴趣的:(springcloud,zookeeper,分布式,zookeeper)