目录
🧂.Seata是什么
🌭2.Seata术语表
🥓3.处理过程
🧈4.下载
🍿5.修改相关配置
🥞6.启动seata
1.Seata是什么
Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。
2.Seata术语表
- Transaction ID XID-全局唯一的事务ID
- TC (Transaction Coordinator)-事务协调者,维护全局和分支事务的状态,驱动全局事务提交或回滚。
- TM (Transaction Manager)-事务管理器,定义全局事务的范围:开始全局事务、提交或回滚全局事务。
- RM (Resource Manager) -资源管理器,管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态,并驱动分支事务提交或回滚。
3.处理过程
- 1. TM 向 TC 申请开启一个全局事务,全局事务创建成功并生成一个全局唯一的 XID;
- 2. XID 在微服务调用链路的上下文中传播;
- 3. RM向TC注册分支事务,将其纳入XID对应全局事务的管辖;
- 4. TM向TC发起针对XID的全局提交或回滚决议;
- 5. TC 调度 XID 下管辖的全部分支事务完成提交或回滚请求。
4.下载
官方地址:github下载
5.修改相关配置
自定义事务组名称+事务日志存储模式为db+数据库连接信息
5.1file.conf
seata-server-0.9.0\seata\conf找到file.conf文件
- 1.service块:
vgroup_mapping.my_test_tx_group =”自定义名称“
- 2.store块
mode="db"并设置db的相关信息
5.2配置数据库
- 1.创建数据库seata
- 2.执行seata准备好的sql脚本
- 3.生成三张表
5.2registry.conf
- 1.type=“nacos”
- 2.nacos.serverAddr= "自己的nacos地址"
6.启动seata
- 双击seata-server.bat启动
如果mysql是8.0版本的 ,肯能会报错~看小张解决
- 1. driver-class-name = "com.mysql.cj.jdbc.Driver"更改
- 2.下载对应mysql8.0版本的jar包,将其放入lib目录下即可
mysql的jar下载:来我这小宝贝儿~
至此!差不多就可以启动了~