Raft共识算法

Raft算法简化了分布式一致性问题,通过强领导者的模式进行日志复制。领导者选举通过随机超时机制,确保了系统稳定性。安全性关键在于日志顺序的保证,包括领导者不会覆盖已存在日志、选举时投票限制和只提交任期内日志。日志复制通过AppendEntries RPC在集群中传播,确保数据一致性。
摘要由CSDN通过智能技术生成

前提条件

Raft不考虑拜庭将军问题,即消息会延迟、丢失但不会错误。

Raft的特性

  • Strong leader:在 Raft 中,日志条目(log entries)只从 leader 流向其他服务器。 这简化了复制日志的管理,使得 raft 更容易理解。
  • Leader 选举:Raft 使用随机计时器进行 leader 选举。 这只需在任何一致性算法都需要的心跳(heartbeats)上增加少量机制,同时能够简单快速地解决冲突。
  • 成员变更:Raft 使用了一种新的联合一致性方法,其中两个不同配置的大多数在过渡期间重叠。 这允许集群在配置更改期间继续正常运行。

通过选举一个 leader 的方式,Raft 将一致性问题分解成了三个相对独立的子问题:

  • Leader 选举:当前的 leader 宕机时,一个新的 leader 必须被选举出来。(5.2 节)
  • 日志复制:Leader 必须从客户端接收日志条目然后复制到集群中的其他节点,并且强制要求其他节点的日志和自己的保持一致。
  • 安全性:Raft 中安全性的关键是图 3 中状态机的安全性:如果有任何的服务器节点已经应用了一个特定的日志条目到它的状态机中,那么其他服务器节点不能在同一个日志索引位置应用一条不同的指令。章节 5.4 阐述了 Raft 算法是如何保证这个特性的;该解决方案在选举机制(5
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值