- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Paxos算法深入分析
夏超伦,盛浩,刘森
TOC \o 1-3 \h \z HYPERLINK \l _Toc219219030 一 算法背景问题分析 PAGEREF _Toc219219030 \h 2
HYPERLINK \l _Toc219219031 1.1 Paxos算法处理的问题 PAGEREF _Toc219219031 \h 2
HYPERLINK \l _Toc219219032 1.2 不一致性问题的产生 PAGEREF _Toc219219032 \h 2
HYPERLINK \l _Toc219219033 1.3 算法的一些前提 PAGEREF _Toc219219033 \h 3
HYPERLINK \l _Toc219219034 二 算法介绍与分析 PAGEREF _Toc219219034 \h 3
HYPERLINK \l _Toc219219035 2.1 算法详细描述 PAGEREF _Toc219219035 \h 3
HYPERLINK \l _Toc219219036 2.1.1 角色分类 PAGEREF _Toc219219036 \h 3
HYPERLINK \l _Toc219219037 2.1.2 核心思想 PAGEREF _Toc219219037 \h 4
HYPERLINK \l _Toc219219038 2.1.3 Proposer行为分析 PAGEREF _Toc219219038 \h 5
HYPERLINK \l _Toc219219039 2.1.4 Acceptor行为描述 PAGEREF _Toc219219039 \h 5
HYPERLINK \l _Toc219219040 2.1.5 Learner行为描述 PAGEREF _Toc219219040 \h 5
HYPERLINK \l _Toc219219041 2.1.6 整体描述 PAGEREF _Toc219219041 \h 6
HYPERLINK \l _Toc219219042 2.1.7 算法总结 PAGEREF _Toc219219042 \h 6
HYPERLINK \l _Toc219219043 2.2 算法伪代码描述 PAGEREF _Toc219219043 \h 6
HYPERLINK \l _Toc219219044 2.3 算法运行实例 PAGEREF _Toc219219044 \h 9
HYPERLINK \l _Toc219219045 2.3.1 结点全部正常 PAGEREF _Toc219219045 \h 9
HYPERLINK \l _Toc219219046 2.3.2 一个Acceptor出现故障 PAGEREF _Toc219219046 \h 9
HYPERLINK \l _Toc219219047 2.3.3 一个Proposer成为Leader后发生故障 PAGEREF _Toc219219047 \h 9
HYPERLINK \l _Toc219219048 2.3.4 两个Proposer进入无限循环竞争 PAGEREF _Toc219219048 \h 10
HYPERLINK \l _Toc219219049 三 算法的思考及优化 PAGEREF _Toc219219049 \h 11
HYPERLINK \l _Toc219219050 3.1 体系结构优化 PAGEREF _Toc219219050 \h 11
HYPERLINK \l _Toc219219051 3.2 Reconfiguration优化 PAGEREF _Toc219219051 \h 12
HYPERLINK \l _Toc219219052 3.3 算法细节优化 PAGEREF _Toc219219052 \h 12
HYPERLINK \l _Toc219219053 参考文献 PAGEREF _Toc219219053 \h 13
一 算法背景问题分析
1.1 Paxos算法处理的问题
Paxos算法解决的问题是一个分布式系统如何就某个值(决议)达成一致[1]。一个典型的场景是,在一个分布式数据库系统中,如果各节点的初始状态一致,每个节点都执行相同的操作序列,那么他们最后能得到一个一致的状态。为保证每个节点执行相同的命令序列,需要在每一条指令上执行一个“一致性算法”以保证每个节点看到的指令一致。一个通用的一致性算法可以应用在许多场景中,是分布式计算中的重要问题。
节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messag
文档评论(0)