seata本地搭建 nacos1.3.2SeaTac1.3.0

nacos  版本 1.3.2

SeaTac版本 1.3.0

dependency也有很多坑需要自己多注意

 

  1. 一个分布式事务的解决方案具有高性能和易用性的微服务架构。
  2. Seata有3个基本组件:
  • 事务协调器(TC):维护全局事务和分支事务的状态,驱动全局提交或回滚。
  • 事务管理器TM:定义全局事务的范围:开始全局事务,提交或回滚全局事务。
  • 资源管理器(RM):管理分支事务正在处理的资源,与TC进行对话以注册分支事务并报告分支事务的状态,并驱动分支事务的提交或回滚。
  1. Seata管理的分布式事务的典型生命周期:
  • TM要求TC开始新的全球交易。TC生成代表全局交易的XID。
  • XID通过微服务的调用链传播。
  • RM将本地事务注册为XID到TC的相应全局事务的分支。
  • TM要求TC提交或回退相应的XID全局事务。
  • TC驱动XID对应的全局事务下的所有分支事务以完成分支提交或回滚。
  1. Maven dependency(去掉重复引用)

<!-- seata-->

<dependency>

<groupId>io.seata</groupId>

<artifactId>seata-all</artifactId>

<version>1.3.0</version>

</dependency>

<dependency>

<groupId>com.alibaba.cloud</groupId>

<artifactId>spring-cloud-starter-alibaba-seata</artifactId>

<exclusions>

<exclusion>

<groupId>io.seata</groupId>

<artifactId>seata-all</artifactId>

</exclusion>

</exclusions>

</dependency>

  1. 配置项目registry.conf

registry {

type = "nacos"

nacos {

application = "serverAddr"

#nacos地址

serverAddr = "10.1.0.192:8848"

namespace = ""

cluster = "default"

username = "nacos"

password = "nacos"

}

}

config {

type = "nacos"

nacos {

serverAddr = "10.1.0.192:8848"

namespace = ""

group = "SEATA_GROUP"

username = "nacos"

password = "nacos"

}

}

  1. 配置项目application.properties

spring.application.name=order-service

server.port=9091

# Nacos 注册中心地址

spring.cloud.nacos.discovery.server-addr = 127.0.0.1:8848

# seata 服务分组,要与服务端config.txt中service.vgroupmapping的后缀对应

spring.cloud.alibaba.seata.tx-service-group=order-service-group

logging.level.io.seata = debug

对应\seata文件下config.txt(这里配置两个服务)

service.vgroupMapping.storage-service-group=default

service.vgroupMapping.order-service-group=default

  1. 下载seata服务器并配置(版本不要用其他,版本不同配置方式不同)
  • demo地址:https://pan.baidu.com/s/1_KyRN31yzFpJKSf-uP82TA 提取码:1111

根据注解进行事务管理 调用服务Service@GlobalTransactional@Transactional(rollbackFor = Exception.class)

被调用服务Service@Transactional(rollbackFor = Exception.class)

  • 下载seata服务器链接:https://pan.baidu.com/s/1IehCitLCGLDLLeokubSz2g 提取码:1111
  • 创建数据库seata,并新建表 链接:https://pan.baidu.com/s/1BG-5OpGn3N7ggrQoL9T28g 提取码:1111
  • 进入解压后的\seata\conf文件夹右键运行git bash here,并输入如下命令 sh nacos-config.sh -h 127.0.0.1 -p 8848 -g SEATA_GROUP -u nacos -w nacos
  • 进入\seata\bin,双击seata-server.bat 运行服务器,可登录nacos后台查看服务

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值