阿里巴巴分布式事务 接入具体步骤_Experts Answering Questions-Alibaba CloudSpring Cloud AlibabaOfficial Website
总计30万奖金,Spring AI Alibaba 应用框架挑战赛开赛Know more

阿里巴巴分布式事务 接入具体步骤

Release Time 2024-09-26


用户问题 :

阿里巴巴分布式事务 接入具体步骤


专家官方解答 :

要接入Sca(Spring Cloud Alibaba)中的阿里巴巴分布式事务Seata,您可以遵循以下详细步骤:

第一步:启动Seata Server

  1. 配置UNDO_LOG表:在您的数据库中创建undo_log表,这是Seata AT模式所必需的,用于记录事务回滚信息。请参照提供的SQL脚本执行:

    CREATE TABLE `undo_log` (
    ...
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
  2. 导入Seata Server所需数据库表:根据您的存储模式(file或db),可能还需要初始化global_table、branch_table、lock_table等。相关SQL脚本可以在Seata GitHub仓库找到并执行。

  3. 启动Seata Server应用:您可以直接下载Seata Server的可执行文件并启动,例如使用命令行:

    $ sh seata-server.sh -p 8091 -m file

    其中,-p指定监听端口,-m指定存储模式。

第二步:配置Nacos与业务服务

  1. 创建Nacos配置:确保Nacos Server已启动,然后在Nacos中创建配置文件seata.properties,Group设为SEATA_GROUP,并根据需要配置事务群组映射,如:

    service.vgroupMapping.*-tx-group=default
  2. 配置业务数据环境:修改account-server、order-service、storage-service等应用的application.yml,使其指向正确的数据库配置。同时,根据您的业务需求创建必要的数据库表。

第三步:启动示例应用

  1. 引入Seata依赖:在您的Spring Boot项目中加入Seata的依赖:

    <dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
    </dependency>
  2. 启动服务:确保Seata Server已启动,然后依次启动account-service、order-service、storage-service以及全局事务控制服务business-service。

  3. 验证:通过HTTP请求访问业务接口,如http://127.0.0.1:18081/seata/feignhttp://127.0.0.1:18081/seata/rest,以检验分布式事务是否正常工作。

解释: 以上步骤确保了Seata分布式事务框架被正确集成到Spring Cloud Alibaba环境中,从Seata Server的配置与启动,到业务服务的配置调整与服务启动,每一步都是为了构建一个能够处理分布式事务的微服务架构。通过Nacos实现配置中心的统一管理,使得服务间的配置同步变得更加便捷。最后的验证步骤是为了确认整个配置过程是否成功,分布式事务是否按预期工作。

---------------

参考链接 :

  • 专家经验:基于springboot sca 添加 seata怎么部署配置?

---------------

答疑服务说明:

本内容经由技术专家审阅的用户问答的镜像生成,我们提供了专家智能答疑服务,使用方法: 用法1: 在页面的右下的浮窗”专家答疑“。 用法2: 点击专家答疑页(针对部分网站不支持插件嵌入的情况)

另:

有其他开源产品的使用问题?点击访问阿里AI专家答疑服务

反馈

如问答有错漏,欢迎点:差评给我们反馈。