SpringCloud Alibaba微服務實戰八 - Seata 整合Nacos

導讀:本篇做爲SpringCloud Alibaba微服務實戰系列的第八篇,主要內容是讓Seata使用Nacos做爲註冊配置中心。系列文章,歡迎持續關注。html

上篇文章中咱們使用的是Seata的file配置實現分佈式事務,既然本系列文章用的是Springcloud alibaba全家桶而Seata又剛好支持Naocs,那麼咱們確定也將選擇Nacos做爲Seata的註冊配置中心。本篇文章咱們將一步一步把Seata整合上Nacos,你們夥跟我一塊兒動手試試吧~注本篇文章依賴於上篇文章SpringCloud Alibaba微服務實戰七 - 分佈式事務java

配置調整

服務端配置修改

服務端主要是修改seataconfregistry.conf文件,讓Seata使用Nacos做爲註冊配置中心,修改後的文件以下:git

registry {
  # file 、nacos 、eureka、redis、zk、consul、etcd三、sofa
  type = "nacos"

  nacos {
    serverAddr = "192.168.136.130:8848"
    namespace = ""
    cluster = "default"
  }
}

config {
  # file、nacos 、apollo、zk、consul、etcd3
  type = "nacos"

  nacos {
    serverAddr = "192.168.136.130:8848"
    namespace = ""
  }
}複製代碼

將Seata配置推到Nacos

此處主要修改seataconfnacos-config.txt文件,做以下兩處修改:redis

  • 修改tx-service-group

    如上圖所示,修改的格式爲service.vgroup_mapping.${spring.alibaba.seata.tx-service-group}=default,結合咱們的系統服務修改後的結果以下:
service.vgroup_mapping.account-service-seata=default
service.vgroup_mapping.product-service-seata=default
service.vgroup_mapping.order-service-seata=default複製代碼

  • 開啓數據庫自動代理
support.spring.datasource.autoproxy=true複製代碼

  • 將配置推送到Nacos
    這裏咱們在seataconf下打開git終端,執行sh nacos-config.sh 192.168.136.130

    執行完成後在git終端看到以下日誌說明推送成功
init nacos config finished, please start seata-server.複製代碼

  • 登陸nacos控制檯驗證配置

    如上能夠看到seata相關的63條配置。
    吐槽一下:這配置看起來好亂,期待後續這一塊能夠優化!

Seata Server端存儲模式(store.mode)現有file、db兩種(本系列用的是file模式,使用db模式能夠參照官網配置http://seata.io/zh-cn/docs/ops/deploy-guide-beginner.html), 兩種模式的區別以下:spring

* file模式爲單機模式,全局事務會話信息內存中讀寫並持久化本地文件root.data,性能較高;數據庫

* db模式爲高可用模式,全局事務會話信息經過db共享,相應性能差些。微信

客戶端修改

上篇文章中咱們在服務項目的resource文件夾中放入了2個文件file.confregistry.conf,此次咱們只須要刪掉file.conf,而後再將服務端修改後的registry.conf從新拷貝到resource文件夾。app

測試

按照以下過程進行測試:分佈式

  • 啓動Seata-Server

    登陸nacos控制檯能夠發現Seata已經註冊進nacos
  • 啓動微服務

    在Seata控制檯能夠看到服務註冊
  • 業務測試
    正常狀況會看到以下日誌

    若是出現異常須要回滾會看到這樣的日誌

---好了,各位朋友們,本期的「SpringCloud Alibaba微服務實戰八 - Seata 整合Nacos」到此就所有結束啦,我們下篇見!ide

one more thing! 若是你以爲這篇文章有點用的話,求"轉發"、求"在看"。名人不說暗話,我喜歡這種趕腳!

one more thing again! 再見以前讓我再求一波關注,請掃描下方二維碼與我聯繫~

系列文章

歡迎掃碼關注微信公衆號或 我的博客

相關文章
相關標籤/搜索