一致性算法之Gossip协议详解

引言

在分布式系统中,为了保证系统的一致性,需要将变更消息传递给所有节点,实现状态同步;Gossip协议(也称为八卦协议)。

介绍

Gossip协议的核心思想是节点之间通过随机的点对点通信传播信息,具体过程如下

  1. 节点初始化
    a. 节点彼此对等:Gossip协议下,系统中所有节点彼此对等,没有Leader节点;
    b. 邻居节点:节点初始化时,会随机或固定(可配置的策略)从所有节点中选择若干个作为邻居。
  2. 信息传播
    1. 每个节点在收到消息后,随机向N个节点传播这条消息;
    2. 被选择的邻居节点收到消息后,会重复a操作,继续向其邻居节点传播消息。
  3. 传播终止
    1. 节点会不断向邻居节点传播消息,直到所有节点都收到,因此,最终所有节点的状态都是一致的(都收到这条消息)。

播放地址
img

优缺点

优点:高可用性

Gossip协议最大的特点是可用性非常高,主要体现在:

  1. 节点失效不会影响整体传播,因为一个节点会被多次传播消息,直到所有节点都收到这个消息;
  2. Gossip协议下,节点是平等的,任何节点的上线/下线都不会破坏系统的整体质量;

缺点

根据上面的分析可以知道,在Gossip协议中,消息会被冗余发生多次,因此会存在一些,但

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高冷小伙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值