ZooKeeper尚硅谷学习笔记(二)推荐,超牛

课程地址:09_尚硅谷_zk_集群_安装_哔哩哔哩_bilibili

学员笔记:01-Zookeeper入门 · 语雀    ★★★★★

======================课程笔记======================

 

视频9中说,文件名称必须是myid

集群启动停止的shell脚本(用于集群台数较多时很方便)。

监听器命令行演示:

客户端API:

注意:connectString字符串参数中间“逗号”的前后不能有空格!

写数据原理: 

第4章-服务器动态上下线监听案例 

服务上线:只需要在ZooKeeper集群中创建节点就可以了,就表示告诉zk集群,它可以对外提供服务了。 

上面图片分析:图片中的 “服务器1-3”、“客户端1-3” 对于ZooKeeper集群来说,都是客户端。但他们的区别在于, “服务器1-3”是执行create创建节点的操作,“客户端1-3” 是执行watch监听(get -w)操作。

要求服务上线/下线能自动感知,所以要创建临时节点哦(带参数 -e),同时还需记住每个节点上线的顺序,所以还需要加 -s 参数带上序列号。 

代码实现:

按照上面图片,代码分三大步来写。

第一大步:启动zk集群,在zk中创建根目录永久节点servers,如下:

第二大步:服务器在zk集群的注册(通常可以将代码中连接和注册等进行封装到一个类如DistributeServer中):

第三大步:客户端在zk集群上的监听操作:

最后,进行测试:

(1)先测试客户端代码:即先不启动服务器,在集群启动的前提下,启动客户端代码与zk建立连接,然后通过命令行的方式创建带序列号的临时节点,实时观察idea控制台的输出信息变化,测试结果为上线没问题,如下图所示。

下线,即删除节点经测试也OK的,如下图。

(2)测试服务器端代码:

首先,更正一下服务器端代码:

测试OK的。

第5章-ZooKeeper分布式锁案例

1. 原生ZooKeeper实现分布式锁案例

待办项:回看视频,自己实战!(说明:生产环境下,代码有问题哦)

企业中,不会自己去手写,因为考虑的问题是比较多的,都是采用的成熟的框架,如Curator框架。练习原生代码的方式,有助于理解底层原理。

2. Curator框架实现分布式锁案例(重点)★★★★★

Curator代码实现: 

第6章-企业面试真题(面试重点)

=====================下面为ZooKeeper高阶课程【源码层面】==========

目录:

ZooKeeper数据一致性如何保证?答:Paxos算法。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值