分布式系统架构系列讲解 - 总目录
Gossip 协议,顾名思义,就像流言蜚语一样,利用一种随机、带有传染性的方式,将信息传播到整个网络中,并在一定时间内,使得系统内的所有节点数据一致。
根据 Base 理论,如果你需要实现最终一致性,那么就可以通过 Gossip 协议实现这个目标。
Gossip协议的核心一共是三块内容:直接邮寄(Direct Mail)、反熵(Anti-entropy)和谣言传播(Rumor mongering)。
一、直接邮寄(Direct Mail)
所谓直接邮寄,就是直接发送更新数据,当数据发送失败时,将数据缓存下来,然后重传。
比如下图中,节点 A 直接将更新数据发送给了节点 B、D:
虽然直接邮寄实现起来比较容易,数据同步也很及时,但可能会因为缓存队列满了而丢数据。也就是说,只采用直接邮寄是无法实现最终一致性的。
二、反熵(Anti-entropy)
熵&#x