博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
two phase commit protocol(2PC)两个阶段提交是什么
阅读量:2037 次
发布时间:2019-04-28

本文共 485 字,大约阅读时间需要 1 分钟。

一、2PC

,2PC)是一种在分布式系统中保证强一致性的算法,可以决定一个事务的最终是决定提交或取消(回滚)。

 

二、角色

1. 协调者(coordinator)

通常一个系统中只有一个

 

2. 事务参与者(participants,cohorts或workers)

一般包含多个

 

三、过程

1. 阶段1:请求阶段(commit-request phase,或称表决阶段,voting phase)

a. 在请求阶段,协调者将通知事务参与者准备提交或取消事务,然后进入表决过程。

b. 在表决过程中,参与者将告知协调者自己的决策:

  • 同意(事务参与者本地作业执行成功)
  • 取消(本地作业执行故障)。

 

 

2. 阶段2:提交阶段(commit phase)

c. 在该阶段,协调者将基于第一个阶段的投票结果进行决策:

  • 提交
  • 取消。

d. 当且仅当所有的参与者同意提交事务协调者通知所有的参与者提交事务,否则协调者将通知所有的参与者取消事务。

e. 参与者在接收到协调者发来的消息后将执行响应的操作。

 

四、开销

with the known lock/unlock overhead

 

 

 

 

转载地址:http://gmkof.baihongyu.com/

你可能感兴趣的文章
插件原理2[转自CSDN]
查看>>
OpenCV Windows7 VC6.0安装以及HelloWorld
查看>>
python升级导致yum命令无法使用的解决办法
查看>>
vi/vim 中如何在每行行首或行尾插入指定字符串
查看>>
linux 查看端口被哪个程序占用
查看>>
socket
查看>>
Spring下载地址
查看>>
Linux日志2
查看>>
VS的路径变量[转]
查看>>
MFC消息处理[转]
查看>>
cookie被禁止后怎样使用session的解决方案
查看>>
Eclipse 部分快捷键失效解决
查看>>
Bootstrap 自定义弹框
查看>>
MyBatis 分页插件 PageHelper 使用方法
查看>>
AbstractQueuedSynchronizer 源码分析
查看>>
分布式以客户为中心的一致性
查看>>
java 注解
查看>>
CAS:乐观锁实现
查看>>
压力测试工具Apache ab
查看>>
Linux - Shell
查看>>