Technical Deep Dive · Blueprint Isometric · 14 PAGES

Raft:为了让人看懂而设计的共识算法

技术深读 deck 14 页 — 首个 technical-deepdive 方法模板示例,也是首个在 Quick 路线上安装 Style 模板的 deck:唯一源是 Raft 论文扩展版 PDF(英文 18 页→中文,术语括注英文),复制状态机、三态与任期时间轴、选举、日志复制与提交、Figure 7 日志冲突修复、安全性两条限制、成员变更与快照全部用原生可编辑几何画出(9 种预设 15 个实例,13 条原生箭头线端),两个 RPC 的代码块与原生对照表,可理解性实验与选举耗时 2 张原生图表,blueprint 视觉 + 3d-isometric 等距插画(首次),smGrid 原生图案网格 13 页,3 对 Morph 承接状态机与日志

本作品来自 MIT 许可的 PPT Master Examples。下方展示全部 14 页;点击页面可放大浏览。

01 / 14Raft:为了让人看懂而设计的共识算法
02 / 14共识算法的工作对象:一份复制日志
03 / 14Paxos 的两个缺陷:难懂,且不适合当实现的地基
04 / 14把「可理解性」当成第一设计目标
05 / 14三种服务器状态,一条被切成任期的时间轴
06 / 14选举:心跳、随机超时,和一张先到先得的选票
07 / 14日志复制:一条命令怎样才算「已提交」
08 / 14日志会怎样对不上,以及领导者怎样把它掰回来
09 / 14安全性靠两条限制:谁能当选,和什么时候算提交
10 / 14整个基本算法只有两种 RPC
11 / 14换机器与清日志:两个必须做、又不能出错的运维动作
12 / 14可理解性实验:43 名学生,33 人 Raft 得分更高
13 / 14一点点随机,就把选举从十秒压到几百毫秒
14 / 14Raft 换来的是什么,又付出了什么