Raft -论文导读 与 ETCD源码解读
Raft -论文导读 与 ETCD源码解读
Hardcore-Onepage
付费内容
简介
复制状态机
定义问题
一个可行解
raft的详细实现
状态机
数据结构
通用持久性状态
通用易失性状态
领导者上的易失性状态
RPC
请求投票
请求参数
返回值
追加日志&心跳(领导者调用)
请求参数
返回值
算法的原理与证明
五条公理
选举安全特性
日志复制过程的完全匹配
安全性
选举限制
状态机安全性证明(三段论)
状态机安全性证明(反证法)
工程优化
容错性
扩展性
性能
生成快照
调节参数
流批结合
并行追加
异步应用
ETCD 中 Raft 库源码分析
Entry
Message
log_unstable.go
storage.go
log.go
progress.go
raft.go
node.go
Life of a Request
Life of a Vote Request
Life of a Write Request
小作业
Q&A
参考资料
Raft -论文导读 与 ETCD源码解读
Hardcore-Onepage
算法的介绍
算法的详细实现
算法原理与证明
工程优化
ETCD 源码实现
一个小作业
付费内容
简介
如何多快好省的对大规模数据集进行存储和计算?
更好的机器
更多的机器
如何让跨网络的机器之间协调一致的工作?
状态的立即一致
状态的最终一致
如何应对网络的不可靠以及节点的失效?
可读写
可读
不可用
组织机器使其状态最终一致并允许局部失败的算法称之为
一致性算法
.
Paxos算法由来已久,目前是功能和性能最完善的一致性算法,然而他难以理解与实现。 raft简化了paxos,它是以易于理解为首要目标,尽量提供与paxos一样的功能与性能。