分布式一致性演进史(六):现代方案,从 Spanner 到 TiDB

经过几十年的探索,我们终于找到了在全球规模下同时获得强一致性和高可用性的方法。Google Spanner 用原子钟改写了规则,TiDB 用软件方案让它平民化。 ...

December 8, 2025 · 4 min · 668 words · Nanlong

分布式一致性演进史(五):CRDT,无需协调的合并魔法

想象一种数据结构:无论节点之间怎么同步,以什么顺序同步,最终结果都一样。不需要协调,不需要解决冲突。这就是 CRDT 的魔法。 ...

December 8, 2025 · 4 min · 775 words · Nanlong

分布式一致性演进史(四):最终一致性,不强求但终会一致

强一致性很美好,但代价是延迟和可用性。亚马逊的 Dynamo 论文问了一个问题:如果允许短暂不一致,能换来什么?答案是:永远可用。 ...

December 8, 2025 · 3 min · 564 words · Nanlong

分布式一致性演进史(三):Paxos 与 Raft,让多数人达成共识

Paxos 是分布式共识的开山之作,但它难懂到作者自己都承认。Raft 的目标很简单:让工程师能看懂。它成功了。 ...

December 8, 2025 · 4 min · 801 words · Nanlong

分布式一致性演进史(二):2PC 与 CAP,理想的破灭

两阶段提交是分布式事务的第一次认真尝试。它几乎成功了,直到协调者挂掉的那一刻。然后 CAP 定理告诉我们:你不能同时拥有一切。 ...

December 8, 2025 · 3 min · 555 words · Nanlong

分布式一致性演进史(一):单机到分布式,一致性为何变难

在单机世界里,你以为理所当然的事情,到了分布式世界全部失效。网络会断、时钟会漂、节点会挂——欢迎来到真实的分布式世界。 ...

December 8, 2025 · 3 min · 490 words · Nanlong

架构演进史(八):没有银弹,架构决策的本质

十年前我相信存在「最佳架构」,五年前我开始怀疑,现在我确信:没有最好的架构,只有最适合当前约束的架构。架构决策的本质,是在多个维度之间做权衡。 ...

December 8, 2025 · 3 min · 560 words · Nanlong

架构演进史(七):微服务与云原生,分布式的代价

「我们拆成了 50 个微服务!」CTO 自豪地说。半年后,我们花了 60% 的时间处理服务间通信、分布式事务和部署问题。代码量没减少,复杂度却指数级增长。 ...

December 8, 2025 · 5 min · 982 words · Nanlong

架构演进史(六):单体的边界,何时该拆?

「我们要上微服务!」技术总监在周会上宣布。我看了看我们 5 人的团队,又看了看那个 10 万行的单体应用,心里默默叹了口气。 ...

December 8, 2025 · 5 min · 914 words · Nanlong

架构演进史(五):边界的艺术,六边形与洋葱

有一天我突然意识到:我的领域层里有 sqlx::PgPool。这意味着,如果我想换数据库,要改领域层。领域层不是应该只有业务逻辑吗? ...

December 8, 2025 · 8 min · 1596 words · Nanlong