什么是两阶段提交协议

转载 2007年09月12日 10:07:00

两阶段提交协议

实现分布式事务的关键就是两阶段提交协议。在此协议中,一个或多个资源管理器的活动均由一个称为事务协调器的单独软件组件来控制。此协议中的五个步骤如下:

应用程序调用事务协调器中的提交方法。

事务协调器将联络事务中涉及的每个资源管理器,并通知它们准备提交事务(这是第一阶段的开始)。

为 了以肯定的方式响应准备阶段,资源管理器必须将自己置于以下状态:确保能在被要求提交事务时提交事务,或在被要求回滚事务时回滚事务。大多数资源管理器会 将包含其计划更改的日记文件(或等效文件)写入持久存储区中。如果资源管理器无法准备事务,它会以一个否定响应来回应事务协调器。

事务协调器收集来自资源管理器的所有响应。

在 第二阶段,事务协调器将事务的结果通知给每个资源管理器。如果任一资源管理器做出否定响应,则事务协调器会将一个回滚命令发送给事务中涉及的所有资源管理 器。如果资源管理器都做出肯定响应,则事务协调器会指示所有的资源管理器提交事务。一旦通知资源管理器提交,此后的事务就不能失败了。通过以肯定的方式响 应第一阶段,每个资源管理器均已确保,如果以后通知它提交事务,则事务不会失败。

图 1 和图 2 通过两个顺序图来说明两阶段提交协议。


图 1 事务提交

图 1 显示事务成功(提交)。图 2 显示由于某种原因,其中一个资源管理器无法提交时的两阶段提交协议。


图 2 事务被回滚

 

相关文章推荐

两阶段提交协议(two phase commit protocol,2PC)

两阶段提交协议(two phase commit protocol,2PC)可以保证数据的强一致性,许多分布式关系型数据管理系统采用此协议来完成分布式事务。它是协调所有分布式原子事务参与者,并决定提交...

两阶段提交协议

本文以CS服务模式为例,对两阶段提交协议的背景、流程、存在的问题及解决办法等进行了讨论,最后进行了简要总结。 0. 背景 在CS服务模式中,服务器集群提供服务,客户端消费服务。当服务器数据发生变更...

两阶段提交协议

两阶段提交协议可以保证数据的强一致性,许多分布式关系型数据管理系统采用此协议来完成分布式事务。 #################################################...

两阶段提交协议

分布式系统常使用两阶段提交协议来实现多个备份的一致性,本文的讲解十分清晰,因此转载至此。 实现分布式事务的关键就是两阶段提交协议。在此协议中,一个或多个资源管理器的活动均由一个称为事务协调器的单...

XA,两阶段提交和X/Open协议

XA和两阶段提交         分布式事务处理是指一个事务可能涉及多个数据库操作,分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作,提交或回滚事务的决定必须产生统一的结果...

两阶段提交协议 (原文链接http://blog.csdn.net/nieanan3602/article/details/8375077)

本文以CS服务模式为例,对两阶段提交协议的背景、流程、存在的问题及解决办法等进行了讨论,最后进行了简要总结。 0. 背景 在CS服务模式中,服务器集群提供服务,客户端消费服务。当服务器数据发生变更...

MySQL Cluster数据分布/分区,两阶段提交协议及事务资源

MySQL Cluster数据分布/分区,两阶段提交协议及事务资源 http://www.zrwm.com/?p=3210 MySQL Cluster数据分布和分区 数据分布 ...

XA 与两阶段提交协议

所谓全局事务,是指分布式事务处理环境中,多个数据库可能需要共同完成一个工作,这个工作即是一个全局事务,例如,一个事务中可能更新几个不同的数据库。对数据库的操作发生在系统的各处但必须全部被提交或回滚。此...

两阶段提交协议(2PC)

对于两阶段协议,只要学过《数据库基本原理》这本书的应该对这个名词比较熟悉,当时在本科的时候,学过这个协议,结果在后面却完全忘了这个协议,直到在后面《大数据存储》里面有一道关于两阶段协议的题后才引起了我...

两阶段提交协议,分布式事务控制(2PC)

两阶段提交协议(two phase commit protocol,2PC)可以保证数据的强一致性,许多分布式关系型数据管理系统采用此协议来完成分布式事务。它是协调所有分布式原子事务参与者,并决定提交...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)