zoukankan      html  css  js  c++  java
  • Paxos is Simple

    【角色】
    0-MainProposer提案生成者
    1-提案发送者(MainProposer+OtherProposer)
    2-提案接收者(Acceptor)
    【动作】
    0-MainProposer---->生成提案
    1-MainProposer+OtherProposer---->发送[提案内容、提案编号]结构体至Acceptor
    2-提案接收者(Acceptor)---->反馈至提案发送者(MainProposer+OtherProposer)表示批准提案
    【约束条件】
    0-超过半数提案接收者(Acceptor)批准提案(Proposer),则其被批准;
    1-MainProposer提案生成者,全局唯一,其生成提案内容和全局互异提案编号[提案内容、提案编号]({key:val}),OtherProposer从MainProposer获取提案内容和提案编号并发送至提案接收者(Acceptor);
    2-全局互异性编号整数值单调递增且和提案为“一对多”关系;
    3-提案接收者(Acceptor),无条件批准其收到的第一个提案;其之后对于所有收到的提案,校验提案编号值大小,和之前已经批准的提案编号比大小,
    如后者大,则批准后者,且今后不再批准编号小于该编号的提案;
    4-MainProposer提案生成者收到超过半数提案接收者(Acceptor)”反馈,则认为提案通过,结束;否则,继续生成[提案内容、提案编号]({key+positive:val+0}),其中仅提案编号更新为收到提案接收者(Acceptor)反馈响应的[提案内容、提案编号]结构体集合中最大提案编号的相对大值。

  • 相关阅读:
    微信公众平台开发(6) 微信退款接口
    shiro 认证和授权原理
    Shiro架构
    微信公众平台开发(5) 微信客服消息接口
    微信公众平台开发(4) 微信模板消息接口
    微信公众平台开发(3) 企业付款
    微信公众平台开发(1) 通用的工具类CommonUtil
    spring 源码构建
    springMvc配置拦截器无效
    IIdea使用CXF开发WebService
  • 原文地址:https://www.cnblogs.com/rsapaper/p/7674272.html
Copyright © 2011-2022 走看看