微服务之分布式事务服务端搭建(seata 1.0以下版本)

简介: 微服务之分布式事务服务端搭建(seata 1.0以下版本)

今天同事咨询我什么事分布式事务?怎么用分布式事务?有没有什么好的中间件来解决分布式事务?
所谓分布式事务,事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。
这就是问题所在不同的服务之间怎么去控制事务呢?今天我们所要了解的seata便能很好的解决这一难题!接下来我们进入今天的学习干活。

1、下载地址:seata.io/zh-cn/blog/…

(我这里选择的是1.0以下版本。0.9.0版本的,1.0以上的配置和这里不一样。后面会发文章单独讲解1.0以上版本的配置)

2、下载后在E:\tools\seata\seata-server-0.9.0\conf

文件内备份file.conf及registry.conf两个文件,以防改错文件,用以快速恢复。这里主要修改file.conf文件中的事务组名称、事务日志存储模式为db、数据库链接信息这三个
image.png
image.png
image.png

3、创建seata库,然后在目录中将建表文件执行(E:\tools\seata\seata-server-0.9.0\conf\db_store.sql)

表global_table,将表中transaction_service_group字段原有32的长度更改作为256长度
这样可避免一下字段长度超长问题

4、修改registry.conf文件,调整注册中心为nacos,指向我们的nacos注册中心

image.png

5、启动nacos(这个必须先与seata-server先启动,不然找不到可用服务)

6、启动seata-server服务,查看nacos控制台出现如下图所示,则说明seata-server启动成功

命令:./seata-server.sh -h ip地址 -p 8091 &
image.png

7、在各自业务库中新建日志回滚表(E:\tools\seata\seata-server-0.9.0\conf\db_undo_log.sql)

如果没有此文件,可按下方sql创建
drop table undo_log; CREATE TABLE undo_log( idbigint(20) NOT NULL AUTO_INCREMENT, branch_idbigint(20) NOT NULL, xidvarchar(100) NOT NULL, contextvarchar(128) NOT NULL, rollback_infolongblob NOT NULL, log_statusint(11) NOT NULL, log_createddatetime NOT NULL, log_modifieddatetime NOT NULL, ext varchar(100) DEFAULT NULL, PRIMARY KEY (id), UNIQUE KEY ux_undo_log (xid,branch_id) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
服务端的搭建到此就完成了,记下来我们会更新业务端代码!

目录
相关文章
|
Java 数据库
在Java中使用Seata框架实现分布式事务的详细步骤
通过以上步骤,利用 Seata 框架可以实现较为简单的分布式事务处理。在实际应用中,还需要根据具体业务需求进行更详细的配置和处理。同时,要注意处理各种异常情况,以确保分布式事务的正确执行。
|
消息中间件 运维 数据库
Seata框架和其他分布式事务框架有什么区别
Seata框架和其他分布式事务框架有什么区别
522 153
|
存储 Java 关系型数据库
在Spring Boot中整合Seata框架实现分布式事务
可以在 Spring Boot 中成功整合 Seata 框架,实现分布式事务的管理和处理。在实际应用中,还需要根据具体的业务需求和技术架构进行进一步的优化和调整。同时,要注意处理各种可能出现的问题,以保障分布式事务的顺利执行。
1335 160
|
数据库
如何在Seata框架中配置分布式事务的隔离级别?
总的来说,配置分布式事务的隔离级别是实现分布式事务管理的重要环节之一,需要认真对待和仔细调整,以满足业务的需求和性能要求。你还可以进一步深入研究和实践 Seata 框架的配置和使用,以更好地应对各种分布式事务场景的挑战。
636 160
|
12月前
|
SQL
seata是怎么进行分布式事务控制的
seata是怎么进行分布式事务控制的
|
Java 关系型数据库 数据库
微服务SpringCloud分布式事务之Seata
SpringCloud+SpringCloudAlibaba的Seata实现分布式事务,步骤超详细,附带视频教程
1010 1
|
消息中间件 Java 数据库
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
这里 借助 Seata 集成 RocketMQ 事务消息的 新功能,介绍一下一个新遇到的面试题:如果如何实现 **强弱一致性 结合**的分布式事务?
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
|
SQL NoSQL 数据库
SpringCloud基础6——分布式事务,Seata
分布式事务、ACID原则、CAP定理、Seata、Seata的四种分布式方案:XA、AT、TCC、SAGA模式
SpringCloud基础6——分布式事务,Seata
|
监控 Go API
带你十天轻松搞定 Go 微服务之大结局(分布式事务)
带你十天轻松搞定 Go 微服务之大结局(分布式事务)