微服务之分布式事务服务端搭建(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;
服务端的搭建到此就完成了,记下来我们会更新业务端代码!

目录
相关文章
|
15天前
|
存储 安全 Java
管理 Spring 微服务中的分布式会话
在微服务架构中,管理分布式会话是确保用户体验一致性和系统可扩展性的关键挑战。本文探讨了在 Spring 框架下实现分布式会话管理的多种方法,包括集中式会话存储和客户端会话存储(如 Cookie),并分析了它们的优缺点。同时,文章还涵盖了与分布式会话相关的安全考虑,如数据加密、令牌验证、安全 Cookie 政策以及服务间身份验证。此外,文中强调了分布式会话在提升系统可扩展性、增强可用性、实现数据一致性及优化资源利用方面的显著优势。通过合理选择会话管理策略,结合 Spring 提供的强大工具,开发人员可以在保证系统鲁棒性的同时,提供无缝的用户体验。
|
1月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
349 3
|
5月前
|
人工智能 安全 Java
智慧工地源码,Java语言开发,微服务架构,支持分布式和集群部署,多端覆盖
智慧工地是“互联网+建筑工地”的创新模式,基于物联网、移动互联网、BIM、大数据、人工智能等技术,实现对施工现场人员、设备、材料、安全等环节的智能化管理。其解决方案涵盖数据大屏、移动APP和PC管理端,采用高性能Java微服务架构,支持分布式与集群部署,结合Redis、消息队列等技术确保系统稳定高效。通过大数据驱动决策、物联网实时监测预警及AI智能视频监控,消除数据孤岛,提升项目可控性与安全性。智慧工地提供专家级远程管理服务,助力施工质量和安全管理升级,同时依托可扩展平台、多端应用和丰富设备接口,满足多样化需求,推动建筑行业数字化转型。
192 5
|
8月前
|
Java 关系型数据库 数据库
微服务SpringCloud分布式事务之Seata
SpringCloud+SpringCloudAlibaba的Seata实现分布式事务,步骤超详细,附带视频教程
593 1
|
11月前
|
消息中间件 Java 数据库
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
这里 借助 Seata 集成 RocketMQ 事务消息的 新功能,介绍一下一个新遇到的面试题:如果如何实现 **强弱一致性 结合**的分布式事务?
新版 Seata 集成 RocketMQ事务消息,越来越 牛X 了!阿里的 Seata , yyds !
|
9月前
|
存储 运维 数据可视化
如何为微服务实现分布式日志记录
如何为微服务实现分布式日志记录
566 1
|
11月前
|
消息中间件 存储 负载均衡
微服务与分布式系统设计看这篇就够了!
【10月更文挑战第12天】 在现代软件架构中,微服务和分布式系统设计已经成为构建可扩展、灵活和可靠应用程序的主流方法。本文将深入探讨微服务架构的核心概念、设计原则和挑战,并提供一些关于如何在分布式系统中实现微服务的实用指导。
404 2
|
11月前
|
人工智能 文字识别 Java
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
尼恩,一位拥有20年架构经验的老架构师,通过其深厚的架构功力,成功指导了一位9年经验的网易工程师转型为大模型架构师,薪资逆涨50%,年薪近80W。尼恩的指导不仅帮助这位工程师在一年内成为大模型架构师,还让他管理起了10人团队,产品成功应用于多家大中型企业。尼恩因此决定编写《LLM大模型学习圣经》系列,帮助更多人掌握大模型架构,实现职业跃迁。该系列包括《从0到1吃透Transformer技术底座》、《从0到1精通RAG架构》等,旨在系统化、体系化地讲解大模型技术,助力读者实现“offer直提”。此外,尼恩还分享了多个技术圣经,如《NIO圣经》、《Docker圣经》等,帮助读者深入理解核心技术。
SpringCloud+Python 混合微服务,如何打造AI分布式业务应用的技术底层?
|
10月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
534 6