标签:背景 gem alt auto 开始 -o 分享 失败 之间
目录
Raft 设计了 3 个状态,用于表示节点的状态,分别是跟随者,候选者,领导者。
3 个角色的转换关系和流程:
可以看到,这张图里的几个概念:
目录:
背景:由于机器的物理时间是不可靠的,所以需要一个逻辑时间。称之为任期(term)。
从 2 个阶段开始说起:
集群节点通常有 2 个节点:
例外:当选举失败,会进行加时赛,即连续有 2 个选举过程。
见下图:
图 2 可见任期 3 选举失败,然后进行了重新选举。
重新选举会继续失败吗?
答:如果不做限制,是会理解失败的。
Raft 使用了一个限制来规避:每台服务器在选举的时候,使用一个随机数(150 -200),即每个服务器在不同的时间发出选举。防止冲突。称之为“加时赛”。
任期号
在上文中说道:由于机器的物理时间是不可靠的,所以需要一个逻辑时间。称之为任期(term)。
有关任期的几个特点:
服务器之间通过 RPC 通信,即远程方法调用。
在 Raft 中,RPC 分成 3 种:
备注:当服务没有及时收到 RPC 的响应时,会发起重试。
标签:背景 gem alt auto 开始 -o 分享 失败 之间
原文地址:https://www.cnblogs.com/stateis0/p/9993170.html