You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于《兼职议会》中Paxos协议特定场景的认知疑问

《兼职议会》场景分析的错误修正

基础协议(Basic Protocol)部分的错误

  • 错误点1:新leader不会直接用b+1重提议该法令。基础协议中,新leader发起新ballot(b+1)时,必须先执行Phase 1:向多数节点发送NextBallot(b+1)请求,收集节点已投票的最大ballot及对应法令。如果多数节点在ballot b中已投票给法令d,新leader会直接在Phase 2提议d,本质是延续已有的投票共识,而非发起全新提议。
  • 错误点2:不存在“同一法令以b和b+1两次通过”的情况。基础协议中,法令“通过”的定义是多数节点在同一个ballot中投票确认该法令。旧leader仅本地写入账本但未发送Success(d),此时集群并未达成共识(其他节点还未确认该法令通过)。只有当新leader在b+1 ballot中获得多数节点对d的投票后,d才真正被集群通过。旧leader重新连接后,会同步集群的共识结果,不会保留本地未被确认的b ballot记录。

多法令议会(Multi-Decree Parliament)部分的错误

  • 错误点1:新leader无需用no-op填补b的空缺。多法令协议中,核心是为每个slot分配唯一法令。旧leader在slot s尝试用ballot b提议法令d但未完成通知,新leader接管后,针对slot s发起b+1 ballot的Phase 1时,会收集到多数节点在slot s的最大投票ballot是b、对应法令是d,因此会直接在slot s用b+1 ballot提议d,无需先填充no-op。
  • 错误点2:旧leader重新连接后不会出现b对应两个值的冲突。多法令协议中,节点会为每个slot记录已投票的最大ballot及对应法令,更高编号的ballot优先级更高。旧leader重新连接后,会通过协议同步集群状态:多数节点在slot s的最大投票是b+1对应的d,旧leader会用这个更高优先级的记录覆盖自己本地未被确认的b ballot记录,最终集群所有节点对slot s的状态达成一致。

内容的提问来源于stack exchange,提问作者newbee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 17:07:45