当前位置: 首页 > wzjs >正文

建设部网站首页搜索引擎广告

建设部网站首页,搜索引擎广告,网站建设服务器都有哪些,上海做网站的小公司Spring Cloud Alibaba Seata 使用说明 spring-cloud-starter-alibaba-seata 是 Spring Cloud Alibaba 生态中用于集成分布式事务框架 Seata 的核心组件,支持 AT(自动补偿)、TCC(手动补偿) 等模式。 一、依赖配置 添加…

Spring Cloud Alibaba Seata 使用说明

spring-cloud-starter-alibaba-seata 是 Spring Cloud Alibaba 生态中用于集成分布式事务框架 Seata 的核心组件,支持 AT(自动补偿)TCC(手动补偿) 等模式。


一、依赖配置
  1. 添加依赖
    pom.xml 中引入 Seata 客户端依赖,需注意版本兼容性(如 Spring Boot 3.4 需搭配 Seata 2.0+):

    <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-seata</artifactId><version>2023.0.1</version><exclusions><exclusion><groupId>io.seata</groupId><artifactId>seata-spring-boot-starter</artifactId></exclusion></exclusions>
    </dependency>
    <!-- 手动指定 Seata 版本 -->
    <dependency><groupId>io.seata</groupId><artifactId>seata-spring-boot-starter</artifactId><version>2.0.0</version>
    </dependency>
    
  2. 排除默认数据源代理
    避免与 Spring Boot 自动配置冲突,需在启动类或配置类中禁用默认代理:

    seata:enable-auto-data-source-proxy: false  # 关闭自动代理
    

二、配置文件设置

application.yml 中配置 Seata 核心参数:

spring:cloud:alibaba:seata:tx-service-group: my_tx_group_v3  # 事务组名,需全局唯一service:vgroup-mapping:my_tx_group_v3: default       # 映射到 Seata Server 分组grouplist:default: 127.0.0.1:8091        # Seata Server 地址
# 注册中心配置(以 Nacos 为例)
seata:registry:type: nacosnacos:server-addr: 127.0.0.1:8848          # Nacos 地址namespace: dev                       # 环境隔离group: SEATA_GROUP

三、数据源代理配置

通过 DataSourceProxy 包装原生数据源,确保 Seata 拦截 SQL 操作:

@Configuration
public class SeataConfig {@Bean@ConfigurationProperties(prefix = "spring.datasource")public DataSource druidDataSource() {return new DruidDataSource();}@Primary@Bean("dataSource")public DataSourceProxy dataSourceProxy(DataSource dataSource) {return new DataSourceProxy(dataSource);  // 关键代理}
}

四、全局事务启用

在需要分布式事务的业务方法上添加 @GlobalTransactional 注解:

@Service
public class OrderService {@GlobalTransactional(name = "createOrderTx", timeoutMills = 60000,rollbackFor = Exception.class)public void createOrder(OrderDTO order) {// 调用其他微服务(如扣减库存、账户扣款)inventoryClient.deduct(order.getProductId());accountClient.deduct(order.getUserId(), order.getAmount());// 本地事务操作(如插入订单记录)orderMapper.insert(order);if (order.getAmount() > 100000) {throw new BusinessException("金额超限,触发全局回滚"); }}
}

五、注意事项与常见问题
  1. 事务分组一致性
    • 所有参与事务的微服务需配置相同的 tx-service-group,并与 Seata Server 的配置匹配。
    • 示例:服务 A 和 B 的 tx-service-group 均需为 my_tx_group_v3

  2. 数据源代理冲突
    • 若使用多数据源,需为每个数据源手动创建代理,并指定 @Primary 注解。

  3. 版本兼容性
    • Seata 2.0+ 仅支持 JDK 17+,需与 Spring Boot 3.x 及以上版本搭配。

  4. XID 传播
    • 确保 seata-spring-boot-starter 正确传递 XID(事务 ID),避免因 Filter 顺序问题导致链路中断。


总结

通过 spring-cloud-starter-alibaba-seata,开发者可通过 注解驱动 快速实现分布式事务管理,结合 Nacos 注册中心与配置中心,构建高可用的微服务架构。核心步骤包括:依赖引入 → 配置调整 → 数据源代理 → 事务注解。实际应用中需特别注意版本兼容性、事务分组一致性及数据源代理配置,避免常见陷阱。

拓展

Seata使用详解

spring-cloud-alibaba使用说明


在这里插入图片描述

http://www.dtcms.com/wzjs/279941.html

相关文章:

  • 苏州网站设计公司兴田德润i网址多少茶叶网络营销策划方案
  • 网站里添加聊天框怎么做线上推广活动有哪些
  • 衢州市院士专家工作站建设网站长沙seo免费诊断
  • 定制网站建设企业网站推广方案策划
  • 谷歌收录wordpressseo搜索优化是什么
  • 大连高端模板建站企业培训机构排名
  • 三水网站制作东莞seo建站投放
  • 马关网站建设重庆网站排名公司
  • 萧江做网站网站制作教程
  • 做ic比较有名的网站外贸网站平台都有哪些
  • ec2 ubuntu wordpressseo教程自学
  • 瑞安市公用建设局网站凡科网免费建站
  • 昆山市住房和建设局网站中山seo排名
  • 长沙sem推广seo教程
  • springboot 网站开发网站开发工程师
  • 手机网站 域名解析广州关键词搜索排名
  • 重庆市建设工程信息网站阿里云万网域名注册
  • 网站建好后最火的网络销售平台
  • 将网站源码下载下来如何使用厦门关键词优化平台
  • wordpress 页面链接seo首页优化
  • 个人网站模板html口碑营销的案例有哪些
  • 网站建设 工作方案排名网
  • 晋江企业网站制作成人职业技能培训有哪些项目
  • 襄阳微信网站建设seo线上培训多少钱
  • 网站建设怎么上传不了图片关键词统计工具有哪些
  • 贵阳网站建设app开发营销外包团队怎么收费
  • wordpress 课程插件重庆seo主管
  • WordPress资讯类主题破解aso优化服务
  • 深圳网站建设公司服务什么是广告营销
  • 外国人学做中国菜 网站谷歌推广seo