初识seata及安装
单体应用被拆分成微服务应用,原来的模块被拆分成独立的应用,分别使用独立的数据源,业务操作需要调用多个服务来完成。此时每个服务内部的数据一致性由本地事务来保证,但是全局的数据一致性问题没法保证,一次业务操作需要跨多个数据源或跨多个系统进行远程调用,就会产生分布式事务的问题。我们将使用seata来解决Seata是一款开源的分布式事务的解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。
目录
1.首先找到下载位置https://github.com/seata/seata/releases,选择你要下载的版本,到版本号的下面找到Assets,点击直接下载
seata-server-1.8.0.zip解压都指定的目录并修改conf目录下的file.conf配置文件。
修改seata-server-1.8.0\seata\conf目录下的registry.conf(注册配置文件)配置文件。
3.在mysql5.7.24中建数据库seata,在seata库里创建表,创建表的sql不用自己写。
前言:
什么是seata
Seata 的官网地址:http://seata.io/zh-cn/
在Seata框架中有三个典型的角色:
- TC(Transaction Coordinator) -- 事务协调器,维护全局事务的运行状态,负责协调并驱动全局事务的提交或回滚。
- TM(Transaction Manager) -- 控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议。
- RM(Resource Manager) -- 控制分支事务,负责分支注册,状态汇报,并接受事务协调器的指令,驱动分支(本地)事务的提交和回滚
典型的Seata管理分布式事务的生命周期
(XID (Transaction ID) (解释:全局唯一的事务ID) )
- TM向TC申请开启一个全局事务,全局事务创建成功并性成一个全局唯一的ID:
- XID在微服务调用链路的上下文中传播:
- RM向TC注册分支事务,将其纳入XID对应全局事务的管辖:
- TM向TC发起针对ID的全局提交或回滚决议:
- TC调度XID下管辖的全部分支事务完成提交或回滚请求。
seata的下载及安装
1.首先找到下载位置https://github.com/seata/seata/releases,选择你要下载的版本,到版本号的下面找到Assets,点击直接下载
2.seata文件的修改
seata-server-1.8.0.zip解压都指定的目录并修改conf目录下的file.conf配置文件。
修改seata-server-1.8.0\seata\conf目录下的registry.conf(注册配置文件)配置文件。
3.在mysql5.7.24中建数据库seata,在seata库里创建表,创建表的sql不用自己写。
db_store.sql在seata-server-1.8.0\seata\conf目录里面--db_store.sql,直接拷贝粘贴就好。拷贝粘贴sql后在seata库注解运行,运行成功后会生成3张表:branch_table(分支表),global_table(全局表),lock_table(锁表)。
4.先启动nacos端口8848
5.再启动seata-server。
6.Seata启动成功的标志:已经装载注册进nacos。
seata启动能否成功的问题
seata低版本0.9.0配置连接mysql8.0版本:解决
这个是转载:Seata0.9.0大坑之连接MySQL8.0_seata-server0.9.0配置连接mysql8.0_月落呜啼霜满天天天的博客-CSDN博客
剩下的问题大部分都是数据库配置连接没有写成自己的,没有进行修改
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)