seata-微服務集成seata


1.引入依賴
首先,我們需要在微服務中引入seata依賴:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
    <exclusions>
        <!--版本較低,1.3.0,因此排除-->
        <exclusion>
            <artifactId>seata-spring-boot-starter</artifactId>
            <groupId>io.seata</groupId>
        </exclusion>
    </exclusions>
</dependency>
<!--seata starter 采用1.4.2版本-->
<dependency>
    <groupId>io.seata</groupId>
    <artifactId>seata-spring-boot-starter</artifactId>
    <version>${seata.version}</version>
</dependency>

 

2.修改配置文件
需要修改application.yml文件,添加一些配置:

seata:
  registry: # TC服務注冊中心的配置,微服務根據這些信息去注冊中心獲取tc服務地址
    # 參考tc服務自己的registry.conf中的配置
    type: nacos
    nacos: # tc
      server-addr: tajia-nacos:8848
      namespace: ""
      group: SEATA_GROUP
      application: seata-tc-server # tc服務在nacos中的服務名稱
      cluster: SH
  tx-service-group: seata-demo # 事務組,根據這個獲取tc服務的cluster名稱
  service:
    vgroup-mapping: # 事務組與TC服務cluster的映射關系
      seata-demo: SH


3.啟動storage-service服務
storage-service服務啟動成功,在seata-server控制台看到如下信息,表示storage-service服務已成功注冊到seata。

16:43:44.948  INFO --- [rverHandlerThread_1_1_500] i.s.c.r.processor.server.RegRmProcessor  : RM register success,message:RegisterRMRequest{resourceIds='jdbc:mysql://tajia-mysql:33064/seata_demo', applicationId='storage-service', transactionServiceGroup='seata-demo'},channel:[id: 0x6743c3c4, L:/192.168.8.118:8091 - R:/192.168.8.118:61509],client version:1.4.2


nacos服務名稱組成包括?
namespace + group + serviceName + cluster

seata客戶端獲取tc的cluster名稱方式?
以tx-group-service的值為key到vgroupMapping中查找


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM