区块链技术博客
www.b2bchain.cn

分布式事务之2PC求职学习资料

本文介绍了分布式事务之2PC求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

2PC又称两阶段提交协议
2PC是一个非常经典的强一致、中心化的原子提交协议

它执行过程中需要协调者、参与者两种角色,一个协调者中心化节点,N个参与者节点共同合作完成分布式事务操作。

下面以一个订单支付的场景案例进行对2PC协议的解析。

支付成功后,需要修改订单状态为支付完成,否则修改状态为支付失败。

2PC协议主要分为两个阶段:投票阶段、提交/执行阶段

第一阶段:投票
分布式事务之2PC

  1. 首先协调者收到请求后向参与者(订单服务)和参与者(支付服务)发出prepare预处理指令,通知它们进入2PC处理逻辑,并等待它们的响应。
  2. 订单服务修改订单状态为支付完成,但不commit,支付服务开始进行支付动态,但不commit。
  3. 支付服务支付成功后向协调者返回Yes,否则返回No,订单服务修改订单状态成功后向协调者返回Yes,否则返回No。

第二阶段:提交/执行(成功)
分布式事务之2PC

  1. 订单服务和支付服务在上一阶段都返回Yes后,协调者会向两个参与者发送commit指令。
  2. 订单服务和支付服务收到commit指令后会执行commit操作,至此,完成了整个事务操作。

2PC又称两阶段提交协议
2PC是一个非常经典的强一致、中心化的原子提交协议

它执行过程中需要协调者、参与者两种角色,一个协调者中心化节点,N个参与者节点共同合作完成分布式事务操作。

下面以一个订单支付的场景案例进行对2PC协议的解析。

支付成功后,需要修改订单状态为支付完成,否则修改状态为支付失败。

2PC协议主要分为两个阶段:投票阶段、提交/执行阶段

第一阶段:投票
分布式事务之2PC

  1. 首先协调者收到请求后向参与者(订单服务)和参与者(支付服务)发出prepare预处理指令,通知它们进入2PC处理逻辑,并等待它们的响应。
  2. 订单服务修改订单状态为支付完成,但不commit,支付服务开始进行支付动态,但不commit。
  3. 支付服务支付成功后向协调者返回Yes,否则返回No,订单服务修改订单状态成功后向协调者返回Yes,否则返回No。

第二阶段:提交/执行(成功)
分布式事务之2PC

  1. 订单服务和支付服务在上一阶段都返回Yes后,协调者会向两个参与者发送commit指令。
  2. 订单服务和支付服务收到commit指令后会执行commit操作,至此,完成了整个事务操作。

2PC又称两阶段提交协议
2PC是一个非常经典的强一致、中心化的原子提交协议

它执行过程中需要协调者、参与者两种角色,一个协调者中心化节点,N个参与者节点共同合作完成分布式事务操作。

下面以一个订单支付的场景案例进行对2PC协议的解析。

支付成功后,需要修改订单状态为支付完成,否则修改状态为支付失败。

2PC协议主要分为两个阶段:投票阶段、提交/执行阶段

第一阶段:投票
分布式事务之2PC

  1. 首先协调者收到请求后向参与者(订单服务)和参与者(支付服务)发出prepare预处理指令,通知它们进入2PC处理逻辑,并等待它们的响应。
  2. 订单服务修改订单状态为支付完成,但不commit,支付服务开始进行支付动态,但不commit。
  3. 支付服务支付成功后向协调者返回Yes,否则返回No,订单服务修改订单状态成功后向协调者返回Yes,否则返回No。

第二阶段:提交/执行(成功)
分布式事务之2PC

  1. 订单服务和支付服务在上一阶段都返回Yes后,协调者会向两个参与者发送commit指令。
  2. 订单服务和支付服务收到commit指令后会执行commit操作,至此,完成了整个事务操作。

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 分布式事务之2PC求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们