知识卡片

Raft降低理解成本

专业/工作 · 490.a.2

内容

Raft 的目标不是推翻共识问题,而是用更清晰的角色和流程让共识更容易实现与维护。对工程系统来说,“可理解”本身就是可靠性的一部分。

参考来源

- 位置:《Go语言高级开发与实战》第5章《分布式系统》(源文件:_epub-src/GoYu Yan Gao Ji Kai Fa Yu Shi Zhan_split_043.html) - 结论依据:原文说明 Raft 相比 Paxos 目标是提供更清晰逻辑分工、更好理解,并通过领导选举、日志复制等模块分解问题,因此支撑该结论。 - 原始内容:识算法。相比于Paxos,Raft 的目标是提供更清晰的逻辑分工使得算法本身能被更好地理解,同时它安全性更高,并能提供一些额外的特性。Raft 能为在计算机集群之间部署有限状态机提供一种通用方法,并确保集群内的任意节点在某种状态转换上保持一致。Raft 算法的开源实现众多,在Go、C++、Java以及Scala中都有完整的代码实现。Raft 这一名字来源于“Re li able(可靠)、Rep