algorithm - 在 "Part-time Parliament"中,为什么使用法令 n-3 中的成员资格可以添加或删除成员?

标签 algorithm paxos

“兼职议会”第 3.3.6 条建议,“通过让法律指定用于通过法令的议会成员资格”,可以安全地更改议会成员资格(以及决策的法定人数)自第 n-3 号法令起。

翻译成更常见的 MultiPaxos 术语,这意味着一组接受器成为复制状态机状态的一部分,并通过添加或删除接受器的提议进行更改。 时隙 N 的法定人数将从决定时隙 N-3 时状态中定义的接受器集合中获取。

兰波特没有为这一决定提供任何理由,虽然他的下一段说必须小心处理更改并描述了算法的最终失败,但它的失败原因与此特定问题无关。

这是确保一致性的充分保障吗?如果是这样,哪些文献支持它?

最佳答案

我维护一个 Paxos 系统,它是多个大型 Web 服务的核心组件。该系统运行Basic Paxos,而不是Multi-Paxos。在该系统中,可以像任何其他转换一样提出对接受者集的更改。 paxos 实例 N 的一组接受者是在 N-1 中批准的接受者。

我不确定是否有任何文献支持这一点,但看到它有效是微不足道的。因为Paxos保证了转换N-1的共识,所以保证了主机同意哪些可以充当转换N的接受者。

但是,Multi-Paxos 和 Raft 会让事情变得有点复杂。 ——或任何流水线共识算法。根据Raft video lecture ,这一定是一个两阶段的方法,但我不记得他解释过原因。

关于algorithm - 在 "Part-time Parliament"中,为什么使用法令 n-3 中的成员资格可以添加或删除成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21353312/

相关文章:

implementation - 关于 Paxos 和论文 Paxos Made Simple 的说明

python - 未排序的二叉搜索树、遍历、大小

string - KMP模式匹配算法的时间复杂度可以是O(m*n)?

algorithm - Delphi 图形的非递归深度优先搜索

cloud - 顾客值(value)选择

consensus - 如何证明像 multipaxos 这样的共识实现是正确的?

distributed-system - 分布式系统的好书

python - 使用递归来反转 python 中围绕值的字典

algorithm - 如何实现随机的重复洗牌 - 但不是太随机