没有合适的资源?快使用搜索试试~ 我知道了~
19-Zookeeper知识点1
需积分: 0 0 下载量 126 浏览量
2022-08-08
23:09:58
上传
评论
收藏 19KB DOCX 举报
温馨提示
试读
3页
2)服务器2启动,它与最开始启动的服务器1进行通信,互相交换自己的选举结果,由于两者都没有历史数据,所以id值较大的服务器2胜出,但是由于没有达到超过半数以上的
资源详情
资源评论
资源推荐
Zookeeper 知识点
Zookeeper 是什么框架
分布式的、开源的分布式应用程序协调服务,原本是 Hadoop、HBase 的一个重要组件。它
为分布式应用提供一致性服务的软件,包括:配置维护、域名服务、分布式同步、组服务等。
应用场景
Zookeeper 的功能很强大,应用场景很多,结合我实际工作中使用 Dubbo 框架的情况,
Zookeeper 主要是做注册中心用。基于 Dubbo 框架开发的提供者、消费者都向 Zookeeper
注册自己的 URL,消费者还能拿到并订阅提供者的注册 URL,以便在后续程序的执行中去调
用提供者。而提供者发生了变动,也会通过 Zookeeper 向订阅的消费者发送通知。
Paxos 算法& Zookeeper 使用协议
Paxos 算法是分布式选举算法,Zookeeper 使用的 ZAB 协议(Zookeeper 原子广播),二者
有相同的地方,比如都有一个 Leader,用来协调 N 个 Follower 的运行;Leader 要等待超半
数的 Follower 做出正确反馈之后才进行提案;二者都有一个值来代表 Leader 的周期。
不同的地方在于:
ZAB 用来构建高可用的分布式数据主备系统(Zookeeper),Paxos 是用来构建分布式一致性
状态机系统。
Paxos算法、ZAB协议要想讲清楚可不是一时半会的事儿,自1990年莱斯利·兰伯特提出Paxos
算法以来,因为晦涩难懂并没有受到重视。后续几年,兰伯特通过好几篇论文对其进行更进
一步地解释,也直到 06 年谷歌发表了三篇论文,选择 Paxos 作为 chubby cell 的一致性算法,
Paxos 才真正流行起来。
对于普通开发者来说,尤其是学习使用 Zookeeper 的开发者明确一点就好:分布式
Zookeeper 选举 Leader 服务器的算法与 Paxos 有很深的关系。
选举算法和流程
ZooKeeper 采用 Fast Leader Election 算法( 可以理解为 Paxos 的一个简化版,一个变种)。
ZooKeeper 服务器共有 4 个状态:
LOOKING:寻找 Leader 状态。
LEADING:领导者。
FOLLOWING:跟随者。
OBSERVING:观察者。
大致的过程就是:
1) 服务启动之后,先选择自己作为 Leader,广播通知其他服务器,并等待接收其他服务器
王元祺
- 粉丝: 65
- 资源: 303
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0