寻找?一种易易于理理解的?一致性算法(扩展版)
摘要Raft 是?一种为了了管理理复制?日志的?一致性算法 。它提供了了和 Paxos 算法相同的功能和性能,但是它的算法结构和 Paxos 不不同,使得 Raft 算法更更加容易易理理解并且更更容易易构建实际的系统 。为了了提升可理理解性,Raft 将?一致性算法分解成了了?几个关键模块,例例如领导?人选举、?日志复制和安全性 。同时它通过实施?一个更更强的?一致性来减少需要考虑的状态的数量量 。从?一个?用户研究的结果可以证明,对于学?生?而?言,Raft 算法?比 Paxos 算法更更加容易易学习 。Raft 算法还包括?一个新的机制来允许集群成员的动态改变,它利利?用重叠的?大多数来保证安全性 。
1 介绍?一致性算法允许?一组机器器像?一个整体?一样?工作,即使其中?一些机器器出现故障也能够继续?工作下去 。正因为如此,?一致性算法在构建可信赖的?大规模软件系统中扮演着重要的?角?色 。在过去的 10 年年?里里,Paxos 算法统治着?一致性算法这?一领域:绝?大多数的实现都是基于 Paxos 或者受其影响 。同时 Paxos 也成为了了教学领域?里里讲解?一致性问题时的示例例 。但是不不幸的是,尽管有很多?工作都在尝试降低它的复杂性,但是 Paxos 算法依然?十分难以理理解 。并且,Paxos ?自身的算法结构需要进?行行?大幅的修改才能够应?用到实际的系统中 。这些都导致了了?工业界和学术界都对 Paxos 算法感到?十分头疼 。和 Paxos 算法进?行行过努?力力之后,我们开始寻找?一种新的?一致性算法,可以为构建实际的系统和教学提供更更好的基础 。我们的做法是不不寻常的,我们的?首要?目标是可理理解性:我们是否可以在实际系统中定义?一个?一致性算法,并且能够?比 Paxos 算法以?一种更更加容易易的?方式来学习 。此外,我们希望该算法?方便便系统构建者的直觉的发展 。不不仅?一个算法能够?工作很重要,?而且能够显?而易易?见的知道为什什么能?工作也很重要 。Raft ?一致性算法就是这些?工作的结果 。在设计 Raft 算法的时候,我们使?用?一些特别的技巧来提升它的可理理解性,包括算法分解(Raft 主要被分成了了领导?人选举,?日志复制和安全三个模块)和减少状态机的状态(相对于 Paxos,Raft 减少了了?非确定性和服务器器互相处于?非?一致性的?方式) 。?一份针对两所?大学 43 个学?生的研究表明 Raft 明显?比 Paxos 算法更更加容易易理理解 。在这些学?生同时学习了了这两种算法之后,和 Paxos ?比起来,其中 33 个学?生能够回答有关于 Raft 的问题 。Raft 算法在许多?方?面和现有的?一致性算法都很相似(主要是 Oki 和 Liskov 的 Viewstamped Replication),但是它也有?一些独特的特性:
? 强领导者:和其他?一致性算法相?比,Raft 使?用?一种更更强的领导能?力力形式 。?比如,?日志条?目只从领导者发送给其他的服务器器 。这种?方式简化了了对复制?日志的管理理并且使得 Raft 算法更更加易易于理理解 。
? 领导选举:Raft 算法使?用?一个随机计时器器来选举领导者 。这种?方式只是在任何?一致性算法都必须实现的?心跳机制上增加了了?一点机制 。在解决冲突的时候会更更加简单快捷 。
? 成员关系调整:Raft 使?用?一种共同?一致的?方法来处理理集群成员变换的问题,在这种?方法下,处于调整过程中的两种不不同的配置集群中?大多数机器器会有重叠,这就使得集群在成员变换的时候依然可以继续?工作 。
我们相信,Raft 算法不不论出于教学?目的还是作为实践项?目的基础都是要?比 Paxos 或者其他?一致性算法要优异的 。它?比其他算法更更加简单,更更加容易易理理解;它的算法描述?足以实现?一个现实的系统;它有好多开源的实现并且在很多公司?里里使?用;它的安全性已经被证明;它的效率和其他算法?比起来也不不相上下 。接下来,这篇论?文会介绍以下内容:复制状态机问题(第 2 节),讨论 Paxos 的优点和缺点(第 3 节),讨论我们为了了可理理解性?而采取的?方法(第 4 节),阐述 Raft ?一致性算法(第 5-8 节),评价 Raft 算法(第 9 节),以及?一些相关的?工作(第 10 节) 。
- 人生低谷的时候,怎么寻找出路?
- 我的世界大全 我的世界
- 网上怎样找女朋友 网上找人上哪个网站怎么寻找亲人
- 87%以上新兵拥有大专学历,低学历当兵如何寻找出路?
- 寻找尸源女 玩尸女的看法
- 超级巨星游戏下载
- 寻找那遗失的年味
- 寻找乡村的味道
- 寻找心灵的故乡
- 创业扶持项目 如何寻找创业项目
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
