Raft 是 Diego Ongaro 于 2014 年提出的共识算法,以可理解性为首要设计目标,将共识问题分解为 Leader 选举、日志复制、安全性三个相对独立的子问题。本文深入伪代码级别,并重点分析 Leader 宕机、日志冲突、网络分区、脑裂恢复等异常场景。
2026-05-29
Merkle Tree 是一种哈希树数据结构,能以 O(log N) 的通信代价定位两个副本之间的数据差异。本文覆盖树的构建算法、差异定位、网络传输优化,以及在 Cassandra Repair、Git、Bitcoin 中的不同应用方式,并深入分析节点宕机恢复、数据损坏等异常场景。
2026-05-29
拜占庭容错(Byzantine Fault Tolerance)解决的是更严酷的故障模型:节点不仅可以崩溃,还可以发送错误、矛盾、甚至恶意构造的消息。本文深入 PBFT 的三阶段协议伪代码,分析 7 种拜占庭攻击异常,并证明为什么需要至少 3f+1 个节点才能容忍 f 个拜占庭节点。
2026-05-29
Hybrid Logical Clock(HLC)是 CockroachDB、YugabyteDB 等 NewSQL 数据库采用的时间戳方案,将物理时钟的直觉性与逻辑时钟的因果正确性融合在一起,在不依赖专有硬件(如 Google TrueTime)的前提下实现接近物理时间的事务排序。
2026-05-29