Zookeeper学习总结

Zookeeper学习小总结

zookeeper是什么:

​ zookeeper = 文件系统 + 通知机制

Zookeeper数据结构:

​ 类似于unix文件系统:树状的

Zookepper特点:
  1. 一个Leader,多个Follower组成的集群
  2. 半数集群存活,Zookeeper集群就能正常服务,适合部署奇数台服务器
  3. 数据一致性,每个Server保存一份相同的数据副本,Client无论连接哪个Server,数据都是一致的(顺序一致性,最终一致性)
  4. 数据更新原子性
  5. 更新请求顺序执行
  6. 实时性
Zookeeper命令集合:
服务端:
bin/zkServer.sh start 开启
bin/zkServer.sh satus 状态
bin/zkServer.sh stop  停止
客户端:
bin/zkCli.sh server - 客户端连接指定的端口
help
ls
create /sanguo "liubei"
 -e:短暂节点
 -s:带序号
get -s /sanguo
Zookeeper选举机制:

Epoch的作用:防止老的leader复活后重新成为leader

Zookeeper监听机制:

https://www.cnblogs.com/jxwch/p/6526271.html

ZAB协议:

个人理解:

​ 消息广播:类似于二阶段提交协议,但是只要完成了一半的提交,第一阶段proposal,有一半的ack,就可以commit。

​ 崩溃恢复:

​ 两种情况:1.提议后,未提交,leader挂了

​ 2.提交后,leader挂了

​ 要做到: 1. 提议后未提交->杀死

​ 2.提交后->必提交

所以有两部:

1)选举

1.没有未提交事务的。- 保证不会提交未提交事务。

2.选一个zxid最大的。 - 不用检查Proposal的提交和丢弃工作—当然不用检查了,zxid最大又没有未提交事务。

2)同步

1.确认自己所有的已提交的Proposal被过半的服务器Commit

2.要确认Follower接收到自己的事务

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值