栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Sharding-jdbc + Seata + Nacos整合

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Sharding-jdbc + Seata + Nacos整合

前置条件

先了解Sharding-jdbc、Seata、Nacos这三样东西各自的作用以及单独使用时的配置。

整合代码已放在github,详细步骤章节请搭配此项目看,欢迎start

思路

如果已经做过Seata + Nacos的整合的,直接看最后的Seata结合Sharding-jdbc章节

详细步骤 Nacos + Seata服务端整合

我之前写过,不再赘述,引流:Seata-初体验以及避坑

项目工程整合Seata

参考文档:seata-example

  1. nacos服务端新增配置seata.properties

  2. application.yml增加seata配置

    # 服务发现
    spring:
      cloud:
        nacos:
          discovery:
            server-addr: localhost:8848
            username: nacos
            password: nacos
      application:
        name: order-service
    # seata配置
    seata:
      enabled: true
      application-id: ${spring.application.name}
      tx-service-group: ${spring.application.name}-tx-group
      # 配置中心
      config:
        type: nacos
        nacos:
          serverAddr: localhost:8848
          dataId: "seata.properties"
          username: nacos
          password: nacos
      # 注册中心
      registry:
        type: nacos
        nacos:
          application: seata-server
          server-addr: localhost:8848
          username: nacos
          password: nacos
      # seata默认使用cglib代理,整合sharding-jdbc会爆错,提示ShardingSphereDataSource无法序列化,有知道怎么解决的朋友,诚心希望告知下
      use-jdk-proxy: true
    
项目工程整合Sharding-jdbc

就是普通的springboot整合Sharding-jdbc,细说的话内容太多,不赘述。

可参考官方文档和我的案例工程

Seata结合Sharding-jdbc

参考文档

  1. 添加Sharding-jdbc 柔性事务jar包

    
        org.apache.shardingsphere
        shardingsphere-transaction-base-seata-at
        ${shardingsphere.version}
    
    
  2. 每个分片数据库添加undo_log表

  3. classpath(springboot中就是resource目录)中增加seata.conf文件

  4. 将Seata的事务(上面)注解换成Sharding-jdbc(下面两行)的

    // seata事务注解
    @GlobalTransactional
    
    @Transactional // spring的事务注解
    @ShardingSphereTransactionType(TransactionType.BASE) // Sharding-jdbc柔性事务
    
求助

有没有大佬知道怎么处理Seata整合Sharding-jdbc时,cglib序列化ShardingSphereDataSource报错的问题?欢迎讨论

参考资料

ShardingSphere-Seata事务

alibaba-stata-example

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1007811.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号