首页 > 编程语言 > 详细

SpringCloud Alibaba微服务实战七 - 分布式事务Seata

时间:2021-07-05 23:15:29      阅读:38      评论:0      收藏:0      [点我收藏+]

http://javadaily.cn/articles/2019/12/19/1576731515587.html

技术分享图片

Seata解决方案

在Springcloud Alibaba体系中使用Seata作为分布式事务解决方案,大家可以访问seata官网去了解详情。
这次我们先使用Seata的file配置解决上面出现的问题,后面再来对其改造。

下载安装Seata Server。

    • 从 Release 页面下载Seata Server
    • 下载完成后直接启动Server端服务。
      在Linux/Mac下
      $ sh ./bin/seata-server.sh
      在Windows下
      bin\seata-server.bat

技术分享图片

技术分享图片

 

 

 技术分享图片

 

# Seata 配置项,对应 SeataProperties 类
seata:
enabled: true
application-id: ${spring.application.name}
tx-service-group: ${spring.application.name}-group
enable-auto-data-source-proxy: true
config:
type: nacos
nacos:
namespace:
serverAddr: http://www.smdroadshow.com:8848
group: SEATA_GROUP
userName: "nacos"
password: "nacos"
registry:
type: nacos
nacos:
application: seata-server
server-addr: http://www.smdroadshow.com:8848
namespace:
userName: "nacos"
password: "nacos"

主要修改如下三处:
service.vgroup_mapping.后面的值修改为配置文件spring.cloud.alibaba.seata.tx-service-group的属性
service.default.grouplist=修改为Seata Server的ip:端口
support.spring.datasource.autoproxy的值修改为true,开启datasource自动代理

生成undo_log表

在微服务的业务库下执行如下语句,生成undo_log表

技术分享图片

 

 

开启全局事务

在分布式事务方法入口添加注解@GlobalTransactional,这里只需要在createOrder方法上添加此注解即可!

技术分享图片

 

技术分享图片

 

SpringCloud Alibaba微服务实战七 - 分布式事务Seata

原文:https://www.cnblogs.com/ywsheng/p/14972101.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!