分布式事务处理模式

X/Open 分布式事务标准定义了一种分布式事务处理模型。 在这种模式下,协调事务管理器根据对参与事务的所有数据源的了解,管理每个数据源处理事务的方式。 通常自行管理事务提交和恢复的数据源会将这项任务委托给事务管理器。

根据 X/Open 标准,分布式事务处理模型由以下部分组成:
  • 定义事务边界并指定构成事务的操作的应用程序
  • 资源管理器,如数据库或文件系统,提供对共享数据源的访问权限
  • 事务管理器为事务分配标识符,监控事务进度,管理事务完成和故障恢复

XA 规范将两阶段提交协议定义为用于事务管理器和资源管理器之间通信的接口。 两阶段提交协议包括准备阶段和提交阶段。 在准备阶段,交易的所有参与者都必须同意完成交易要求的更改。 如果任何一个参与方报告出现问题,准备阶段就会失败,事务就会回滚。 如果准备阶段成功,则开始提交阶段。 在提交阶段,事务管理器会指示所有参与者提交事务。

在分布式事务阶段,当WebSphere MQ作为事务管理器时,IBM Db2®和Oracle等数据源可作为资源管理器参与 XA 事务。

有关 X/Open 标准的更多信息,请参阅《分布式事务处理》:XA 规范》,可从http://opengroup.org 获取。