成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一文了解Seata的安裝和配置

開發 架構
分布式事務其實現在解決方案有很多,比如 TCC方案,XA 方案,本地消息表,可靠消息最終一致性方案,最大努力通知方案等等,但是這種方案實現上肯定都是偏復雜的,而阿里我們都知道他是有一套自己解決分布式事務的方案的,那么大家都知道是什么呢?

我們都知道現在使用微服務,那么就會出現一種情況,就是一個功能,從 A 服務,到 B 服務,然后到 C 服務,每個服務都可能需要去調取不同的服務,而這個服務之間的調用,而當他們使用三個獨立的數據源的時候,那么他們也就只能保證自己每個服務內部的事務,而去全局的一致性,則是沒有辦法保證的,也就是我們再面試的時候,經常會被問到的分布式事務。

分布式事務

其實分布式事務用一句話概括,那就是一次業務操作,如果橫跨多個數據源或者需要跨多個系統進行遠程調用的話,就會產生分布式事務問題。

如何解決分布式事務

分布式事務其實現在解決方案有很多,比如 TCC方案,XA 方案,本地消息表,可靠消息最終一致性方案,最大努力通知方案等等,但是這種方案實現上肯定都是偏復雜的,而阿里我們都知道他是有一套自己解決分布式事務的方案的,那么大家都知道是什么呢?今天了不起就來和大家看看這個 Seata 一款開源的分布式事務解決方案,致力于在微服務架構下提供高性能和簡單易用的分布式事務服務。

Seata簡介

Senta 是一款開源的分布式事務解決方案,致力于在微服務架構下提供高性能和簡單易用的分布式事務服務。

我們來看看官網的介紹,

Seata官網

圖片圖片

突然看到這個圖里面的術語的時候,是不是有點懵,我們來看看這個Seata的術語

TC (Transaction Coordinator) - 事務協調者

維護全局和分支事務的狀態,驅動全局事務提交或回滾。

TM (Transaction Manager) - 事務管理器

定義全局事務的范圍:開始全局事務、提交或回滾全局事務。

RM (Resource Manager) - 資源管理器

管理分支事務處理的資源,與TC交談以注冊分支事務和報告分支事務的狀態,并驅動分支事務提交或回滾。

其實如果看上面的圖,我們看看這個處理過程

圖片圖片

接下來我們直接來實戰試一下這個Seata的實際操作。

Seata-Server安裝

我們直接用官網的Demo來學習一下

快速開始

我們挑選一個不是那么新的版本,畢竟都知道,新版本中那可是有很多坑的,一個不留神就踩進去,學習還是穩一手。

圖片圖片

下載完成,直接解壓,然后去找到文件目錄,

我們直接找到config下的 file.config,

修改file.conf

主要就是修改,事務日志存儲模式為db+數據庫連接信息

我們直接把mode改為db

然后db改為我們自己的數據庫地址

圖片圖片

然后我們去把數據庫給創建好,建表語句在config下的 readme文件中。

圖片圖片

我們找到 server 的 Mysql 的建表語句

圖片圖片

ok了 建表成功。

修改registry.conf

還是同樣的目錄,我們再修改一下 registry.conf 主要是來修改nacos的信息的,因為 Seata 其實推薦的也是 nacos,所以下面的這個 type 我們直接來改成自己的 naocs 就可以了。

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

  nacos {
    application = "seata-server"
    serverAddr = "127.0.0.1:8848"
    group = "SEATA_GROUP"
    namespace = "5518397c-7ea8-4f55-89ca-dacfc6fdf914"
    cluster = "default"
    username = "nacos"
    password = "nacos"
  }

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

  nacos {
    serverAddr = "127.0.0.1:8848"
    namespace = "5518397c-7ea8-4f55-89ca-dacfc6fdf914"
    group = "SEATA_GROUP"
    username = "nacos"
    password = "nacos"
    dataId = "seataServer.properties"
  }
  ...
}

獲取 config.txt 文件

直接獲取config.txt

config.txt

然后我們修改一下store

圖片圖片

配nacos

先從git上面下載 nacos-config.sh,然后推送配置到nacos

nacos-config.sh

把 nacos-config.sh 文件放到 config 下,然后執行命令

sh nacos-config.sh -h localhost -p 8848 -g SEATA_GROUP -t 5518397c-7ea8-4f55-89ca-dacfc6fdf914 -u nacos -w nacos

命令的解釋如下:

-h: 注冊到注冊中心的ip
-p: Server rpc 監聽端口
-m: 全局事務會話信息存儲模式,file、db、redis,優先讀取啟動參數 (Seata-Server 1.3及以上版本支持redis)
-n: Server node,多個Server時,需區分各自節點,用于生成不同區間的transactionId,以免沖突
-e: 多環境配置參考 http://seata.io/en-us/docs/ops/multi-configuration-isolation.html

圖片圖片

執行這個有個前提,那就是registry.conf中的namespace和命令中的必須保持一樣,并且在 nacos中也增加了對應的命名空間,如果你沒有仔細的看文檔,并且沒有對 nacos 中的命名空間做增加的話,那么你就肯定失敗,然后在 nacos 中就是看不到自己的配置情況。

圖片圖片

創建完成之后,就會出現這個命名空間的ID,我們直接來隨機的,然后復制這個ID 到registry.conf中配置一下就可以了。

大家可以看到上面的圖中出現了total-count是98,但是failure-count:1 我們看執行完命令后,失敗的是哪個,

nacos-config.sh: line 88: [: too many arguments
Set store.publicKey= failure

這個失敗了,但是有人可能會失敗四個

Set store.publicKey= failure
Set store.redis.sentinel.masterName= failure
Set store.redis.sentinel.sentinelHosts= failure
Set store.redis.password= failure

其實這四個并不影響這個執行,因為我們可以去 Nacos 中看配置情況,

圖片圖片

因為了不起之季節吧這個 store.redis 的內容給全注釋了。所以只有一個沒成功。

接下來我們就可以啟動seata了。

啟動 seata

我們這里先不考慮這個client,因為可以在我們后面使用的時候再去添加這個

直接執行 bin/seata-server.bat 文件,然后看看能啟動成功不。

圖片圖片

當我們看到這個 Server started 的時候,我們就知道,我們的 seata 的服務端就啟動成功了,到這里我們的 seata 的安裝和配置就算是已經完成了。

你學會了么?

責任編輯:武曉燕 來源: Java極客技術
相關推薦

2020-08-27 07:34:50

Zookeeper數據結構

2024-02-01 11:57:31

this指針代碼C++

2023-12-29 15:28:18

磁盤固態硬盤

2019-10-12 08:59:36

軟件DevOps技術

2023-04-26 15:43:24

容器編排容器編排工具

2023-11-20 08:18:49

Netty服務器

2022-02-25 07:34:36

MQTT協議RabbitMQ

2022-06-08 08:11:56

威脅建模網絡安全網絡攻擊

2023-11-06 08:16:19

APM系統運維

2025-05-23 09:38:54

JWT開發Go

2022-11-11 19:09:13

架構

2023-11-22 16:10:59

編程語言機器語言

2018-11-13 09:56:52

TomcatServerWeb應用服務器

2023-12-26 07:33:45

Redis持久化COW

2022-10-28 13:48:24

Notebook數據開發機器學習

2019-07-02 11:01:35

SpringBean配置

2024-01-19 11:53:29

文件系統操作系統存儲

2023-10-27 08:15:45

2022-02-24 07:34:10

SSL協議加密

2023-11-08 08:15:48

服務監控Zipkin
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品一区二区 | 手机av免费在线 | 国产午夜精品久久久久 | 欧美中国少妇xxx性高请视频 | 一区二区三区国产视频 | 免费黄色日本 | 欧美日韩一区在线观看 | 欧美日韩成人影院 | 国产成人精品一区二区三 | 精品日本中文字幕 | 免费性视频 | 国产激情第一页 | 涩涩视频网站在线观看 | 草久久| 日本在线小视频 | 91精品国产一区二区三区 | 久久99精品视频 | 欧美一级片黄色 | 中文字幕高清 | 国产精品激情小视频 | 亚洲国产精品成人 | 久久久久国产 | 久久一 | 国产99久久久国产精品 | av中文在线播放 | 狠狠热视频 | 国产精品福利网站 | 久久国产精品免费一区二区三区 | 成人欧美一区二区三区黑人孕妇 | 国产精品国产三级国产播12软件 | 日韩欧美中文 | 国产综合久久 | 国产99视频精品免费播放照片 | 亚洲国产精品99久久久久久久久 | 日韩欧美中文字幕在线视频 | 国产精彩视频 | 91精品国产综合久久婷婷香蕉 | 99re视频| 国产高清在线视频 | 91视频在线 | 精品91|