springboot+mybatis多数据源分布式事务管理

文章介绍了AtomikosDataSourceBean在处理单体应用中连接多个数据源的分布式事务时的作用。它基于JTA标准,提供TransactionsEssentials开源版支持XA规范的事务管理,而ExtremeTransactions付费版则增加了TCC和远程调用支持。XA规范涉及全局事务管理器和局部资源管理器间的交互,通过预备和提交两个阶段来确保分布式事务的一致性。
摘要由CSDN通过智能技术生成

区别于阿里巴巴Seata,适用于单体应用连接多个数据源,处理分布式事务。

使用AtomikosDataSourceBean

为了便于事务处理的规范化配置,在JavaEE中提供了JTA(Java Transaction API,事务处理API)服务支持,该服务运行应用程序实行分布式事务处理。JTA仅仅是一个技术标准,要引入Atomikos开源组件实现具体事务管理操作。

Atomikos官网:https://www.atomikos.com/Main/WebHome

TransactionsEssentials免费开源版:实现JTA/XA规范,支持单体应用连接多数据源分布式事务管理。

ExtremeTransactions付费版:额外支持TCC,远程调用技术支持。

XA规范:由X/Open组织提出的分布式事务规范。XA规范主要定义了(全局)事务管理器(TM,Transaction Manager)和(局部)资源管理器(RM,Resource Manager)之间的接口,常用的主流关系型数据库产品已实现了XA接口标准。XA是一个基于二阶段提交的具体实现,在进行分布式事务处理中主要分为预备(Prepare)和提交(Commit)两个处理阶段,这两个阶段的具体作用如下:

预备阶段(Prepare):TM事务协调者向所有RM资源管理器发送预备(Prepare)指令,询问是否可以执行,RM资源管理器返回可执行或不可执行。

提交阶段(Commit):所有RM资源管理器都返回可执行,则向所有RM发现Commit指令。如果有一个RM返回不可执行,则向所有RM发送rollback指令。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值