分布式事务,单JVM进程与多数据库,分布式事务技术选型,0-1过程,代码全。

本文通过一个实例演示了如何在单JVM进程中使用Atomikos处理涉及多个数据库的分布式事务。首先介绍了项目搭建步骤,包括创建工程、导入依赖、配置数据库脚本和mybatis等。接着详细展示了Service层、Controller层的代码结构,以及如何在不使用TCC的情况下,通过配置类和mapper接口实现双数据库连接。最后,通过测试验证了在分布式事务下,当发生异常时,两个数据库的数据都能得到正确回滚。
摘要由CSDN通过智能技术生成

由于很多小白程序员在单一JVM进程配合多数据库的架构环境中,总是考虑一主多从的mysql集群环境。还不知道mysql集群数据库按照表纵向分割以后,也是可以走数据库使用事务的。那么这里使用到的就是分布式事务,XA协议。现在大部分主流的数据库都支持XA协议。这里不用太多废话,直接上环境,上代码。
这里请注意,不需要使用TCC那种服务层集群级别的事务

环境

环境 版本
JDK Oracle JDK17
OS MacBookPro Ventura13.0.1
SpringBoot 2.7.6
Mysql 8.0.30

项目搭建

为了让小白能够体会XA协议的分布式事务,先来一个未增加分布式事务的。

创建工程

在idea中鼠标右键目录,new->module
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌拉乌拉liang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值