- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
五、Zookeeper分布式协调服务
5.2Zookeeper基本原理
5.2Zookeeper基本原理
谈一个达成一致意见的问题
举例:班级需要决定召开班会的时间
5.2Zookeeper基本原理
班干部决策原则
每个人都知道其他人的存在
每个人都是平等的
少数服从多数
之前没有收到提议,那一定要接受提议。
先后收到不同提议,接受先收到提议。
5.2Zookeeper基本原理
具体场景
假设有一个总数是5人的班干群,多数人赞成则达成一致。
5.2Zookeeper基本原理
Quorum[kwɔrəm]
Thesmallestnumberofpeoplewhomustbeatameetingbeforeitcanbeginordecisionscanbemade.
译:会议召开或作出决定的最少参与人数。
这里可以理解为少数服从多数。
5.2Zookeeper基本原理
遇到冲突如何处理
同一次提案,接受先收到的提案,拒绝后面收到的提案
5.2Zookeeper基本原理
分布式一致性经典算法Paxos
Paxos算法
Paxos算法是莱斯利·兰伯特(LeslieLamport)于1990年提出的一种基于消息传递且具有高度容错特性的一致性算法。
5.2Zookeeper基本原理
Paxos算法
编号0
编号0
发送提案编号1:电费1元/度
编号0
编号0
1.提案议员查看记事本,按顺序提出提案。
编号0
5.2Zookeeper基本原理
Paxos算法
编号0
编号0
编号1
接受提案编号1:电费1元/度
编号0
编号1
编号0
编号1
2.接收提案议员查看记事本,提案编号大于记事本的最大编号,记录下提议,并回复接受提议。
编号0
编号1
接受
接受
接受
接受
新增
5.2Zookeeper基本原理
Paxos算法
编号0
编号1
编号0
编号1
编号1提案生效!
编号0
编号1
编号0
编号1
3.超过半数的回复,编号1提案生效
编号0
编号1
5.2Zookeeper基本原理
Paxos算法系列
基于消息传递通信模型的分布式系统,不可避免的会发生以下错误:进程可能会慢、被杀死或者重启,消息可能会延迟、丢失、重复。Paxos算法解决的问题是在一个可能发生上述异常的分布式系统中如何就某个值达成一致,保证不论发生以上任何异常,都不会破坏决议的一致性。
Paxos算法其中的几个变种BasicPaxos、Multi–Paxos和Fast-Paxos等。
5.2Zookeeper基本原理
BasicPaxos算法角色
每个成员(节点)都可以在以下三种角色直接切换,也可以兼任多种角色。
Proposer:提出提案(Proposal)。Proposal信息包括提案编号(ProposalID)和提议的值(Value)。
Acceptor:参与决策,回应Proposers的提案。收到Proposal后可以接受提案,若Proposal获得多数Acceptors的接受,则称该Proposal被批准。
Learner:不参与决策,从Proposers/Acceptors学习必威体育精装版达成一致的提案(Value)。
5.2Zookeeper基本原理
BasicPaxos算法步骤
1.Prepare阶段:
proposer选择一个提案编号n并将prepare请求发送给acceptors中的一个多数派;
acceptor收到prepare消息后,如果提案的编号大于它已经回复的所有prepare消息(回复消息表示接受accept),则acceptor将自己上次接受的提案回复给proposer,并承诺不再回复小于n的提案;
2.Accept阶段:
当一个proposer收到了多数acceptors对prepare的回复后,就进入Accept阶段。它要向回复prepare请求的acceptors发送accept请求,包括编号n和根据P2c决定的value(如果根据P2c没有已经接受的value,那么它可以自由决定value)。
在不违背自己向其他proposer的承诺的前提下,acceptor收到accept请求后即批准这个请求。
5.2Zookeeper基本原理
BasicPaxos算法图示
ClientProposer(P)Acceptor(A)Learner(L)
|||||||---达成一致的步骤---
X-------||||||(1)R
您可能关注的文档
- Hadoop 3大数据部署与数据分析实战 课件 01-01-大数据技术和应用.pptx
- Hadoop 3大数据部署与数据分析实战 课件 -01-02-模板机制作-Hadoop诞生与发展.pptx
- Hadoop 3大数据部署与数据分析实战 课件 03-02-Hive的部署搭建和架构.pptx
- Hadoop 3大数据部署与数据分析实战 课件 03-03-Hive支持的数据类型.pptx
- Hadoop 3大数据部署与数据分析实战 课件 03-04-Hive表类型和区别.pptx
- Hadoop 3大数据部署与数据分析实战 课件 03-05-Hive QL操作-添加数据.pptx
- Hadoop 3大数据部署与数据分析实战 课件 03-06-Hive QL操作-查询数据.pptx
- Hadoop 3大数据部署与数据分析实战 课件 02-02-Hadoop入门及实战-YARN.pptx
- Hadoop 3大数据部署与数据分析实战 课件 02-01-Hadoop入门及实战-HDFS.pptx
- Hadoop 3大数据部署与数据分析实战 课件 02-03-Hadoop入门及实战-MapReduce.pptx
- 2025年分红险:低利率环境下产品体系重构.pdf
- 大学生职业规划大赛《应用物理学专业》生涯发展展示PPT.pptx
- 大学生职业规划大赛《新媒体技术专业》生涯发展展示PPT.pptx
- 七年级上册英语同步备课(人教2024)Unit 3 课时2 Section A(2a-2f)(同步课件).pdf
- 七年级上册英语同步备课(人教2024)Unit 2 课时4 Section B(1a-1d)(同步课件).pdf
- 七年级上册英语同步备课(人教2024)Unit 3课时6 project(课件).pdf
- 2025年港口行业报告:从财务指标出发看港口分红提升潜力.pdf
- 2023年北京市海淀区初一(七年级)下学期期末考试数学试卷(含答案).pdf
- 2026年高考化学一轮复习第7周氯及其化合物、硫及其化合物.docx
- 2023年北京市西城区北京四中初一(七年级)下学期期中考试数学试卷(含答案).pdf
文档评论(0)