背景
在分布式系统中,不同节点间共享状态是一个基本需求。
一种简单的方法是 集中式广播:由中心节点向所有其他节点同步信息。这种方式适合中心化系统,但存在明显缺陷:当节点数量增加时,同步效率下降(O(N) 复杂度),且过度依赖中心节点,存在单点故障风险。
分散式传播 的 Gossip 协议 提供了一种去中心化的替代方案。
如果你还不清楚 Leader/Quorum 和 Gossip 分别适合解决什么问题,可以先看 分布式协调详解。这篇 Gossip 文章只展开“状态如何传播并最终收敛”,不负责解释 Leader 选举、脑裂和 Fencing Token 这类强协调问题。
2022/3/18大约 10 分钟
