【分布式系统百科】一致性模型全景:从线性一致性到最终一致性的光谱
成功写入之后,还能读到旧值吗?用反例区分线性、顺序与因果一致性,拆开最终收敛、会话保证和事务隔离;核对 ZooKeeper、Spanner、DynamoDB、Cassandra 的接口边界,并提供可运行的 Go 历史检查器。
Linux 内核、存储与网络、可观测性、系统架构与大模型基础设施的工程笔记:机制拆解、踩坑复盘与可核对证据,少空谈。
共 4 篇文章 · 返回首页
成功写入之后,还能读到旧值吗?用反例区分线性、顺序与因果一致性,拆开最终收敛、会话保证和事务隔离;核对 ZooKeeper、Spanner、DynamoDB、Cassandra 的接口边界,并提供可运行的 Go 历史检查器。
按 PODC 1996 原文复原 Michael-Scott 无锁队列:线性化点、计数指针防 ABA、计数器为何不解决内存回收、每条 CAS 的 C11 内存序,并用 TSan 与线性化检查器实测。
跳表插删要改多个指针,靠标记删除或乐观加锁把它们变成一次线性化操作。对照 Pugh、Harris、Fraser、HLLS 与 JDK 21、LevelDB、RocksDB 源码,并用 TSan 与对拍验证实现,实测独占 CPU 与超额订阅两种情形下的吞吐。
FLP 说异步系统中共识不可能,但 Raft 跑得好好的。CAP 说三选二,但 Spanner 声称兼得。矛盾不在定理本身,在于读定理时跳过了精确条件。本文回到 FLP、CAP、共识数和收割/产出四篇原始论文,逐一拆解它们的真实陈述、证明思路与工程边界。