代码之家  ›  专栏  ›  技术社区  ›  gruszczy

Paxos:如何选择提议者、接受者和学习者?

  •  1
  • gruszczy  · 技术社区  · 6 年前

    我想从许多相同的过程中选出一位领导人。Paxos的所有解释都说,有些过程是命题者,有些是投票者,有些是接受者。启动流程时是否需要将这些角色分配给流程?

    如果我所有的求婚者都死了怎么办?我能把现有的学习者/选民转换为提案人吗?

    这是一种有效的方法吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Michael Deardeuff    6 年前

    我是几个paxos生产系统的维护人员。我将详细介绍我在矿山和其他实际/生产系统中看到的情况。


    Paxos的所有解释都说,有些过程是命题者,有些是投票者,有些是接受者。启动流程时是否需要将这些角色分配给流程?

    在实际系统中,提议者和接受者是同一组节点。也就是说, 提议者 接受者 是由同一进程承担的两个角色。


    许多Paxos系统(例如用作kv存储的那些系统)在 序列

    在我维护的一些系统中,建议/选择的值有两部分:来自客户的有效负载和paxos成员资格。paxos回合由 先前的 你可以看看Raft选择成员的方式。

    在Raft中,选择法定人数成员是一个两阶段的过程。首先,提出并提交新的法定人数; 二者都 quorums被使用了一段时间,然后新的法定人数接管。具体地说,在过渡期间,旧的和新的法定人数中的大多数人都必须作出任何承诺,包括从新的法定人数中接管。

    推荐文章