当前位置:首页 > 开店攻略 > 支付宝经验

支付宝蚂蚁金服分布式事务中的二阶段怎么进行提交

关注人数:97 发布时间:2021-12-22 11:35:16

二阶段提交协议(two-phase commit protocol,简称 2pc)是分布式事务的核心协议。在此协议中,一个事务管理器(transaction manager,简称 tm)协调 1 个或多个资源管理器(resource manager,简称 rm)的活动,所有资源管理器向事务管理器汇报自身活动状态,由事务管理器根据各资源管理器汇报的状态(完成准备或准备失败)来决定各资源管理器是“提交”事务还是进行“回滚”操作。

支付宝蚂蚁金服

二阶段提交的具体流程如下:

应用程序向事务管理器提交请求,发起分布式事务;

在第一阶段,事务管理器联络所有资源管理器,通知它们准备提交事务;

各资源管理器返回完成准备(或准备失败)的消息给事务管理器(响应超时算作失败);

在第二阶段:

如果所有资源管理器均完成准备( 1),则事务管理器会通知所有资源管理器执行事务提交;

如果任一资源管理器准备失败( 2 中的资源管理器 b),则事务管理器会通知所有资源管理器进行事务回滚。

所有资源管理器完成准备,事务管理器协调各资源管理器提交事务

图 1

任一资源管理器准备失败,事务管理器协调各资源管理器回滚事务

图 2

支付宝蚂蚁金服

猜你喜欢