正如论文所说:
Election Safety: at most one leader can be elected in a given term. §5.2
但是,系统中可能不止一位领导者。 Raft 只能保证在给定的 term 中只有一个领导者。所以如果我有多个客户,我会不会得到不同的数据?这如何让 Raft 成为共识算法?
这里有什么我不明白的地方,有人可以解释一下吗?
最佳答案
只有获得多数选票的候选节点才能领先。集群中只有一个多数存在,如果不联系至少一个已经投票给另一个领导者的节点,另一个节点就无法听到多数的消息。听到另一位领导人的候选人将下台。这是一个很好的动画,展示了它是如何发生的:http://thesecretlivesofdata.com/raft/#election
关于algorithm - 如果有多个领导者,Raft 算法如何保证共识?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24681519/