国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

3分鐘帶你了解下分布式事務(wù)TCC與SAGA

這篇具有很好參考價(jià)值的文章主要介紹了3分鐘帶你了解下分布式事務(wù)TCC與SAGA。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

文章首發(fā)地址

TCC 事務(wù)

TCC(Try-Confirm-Cancel)是一種分布式事務(wù)方案,它通過(guò)將事務(wù)拆分成“嘗試(Try)”、“確認(rèn)(Confirm)”和“取消(Cancel)”三個(gè)階段來(lái)實(shí)現(xiàn)。

在TCC中,每個(gè)參與者都需要實(shí)現(xiàn)這三個(gè)階段來(lái)協(xié)調(diào)分布式事務(wù)的執(zhí)行。具體流程如下:

  • 嘗試(Try)階段:在這一階段中,參與者會(huì)預(yù)留需要參與事務(wù)的資源,并鎖定這些資源。如果所有參與者都成功執(zhí)行了嘗試操作,則事務(wù)進(jìn)入確認(rèn)階段。如果有任何一個(gè)參與者執(zhí)行失敗,則事務(wù)進(jìn)入取消階段。
  • 確認(rèn)(Confirm)階段:在這一階段中,參與者將之前預(yù)留的資源提交到事務(wù)中心,完成事務(wù)的提交操作。如果所有參與者都成功執(zhí)行確認(rèn)操作,則事務(wù)最終提交成功。如果有任何一個(gè)參與者執(zhí)行失敗,則事務(wù)進(jìn)入取消階段
  • 取消(Cancel)階段:在這一階段中,參與者釋放之前預(yù)留的資源,并撤銷之前執(zhí)行的操作。如果所有參與者都成功執(zhí)行取消操作,則事務(wù)最終取消成功。如果有任何一個(gè)參與者執(zhí)行失敗,則事務(wù)無(wú)法取消,需要手動(dòng)進(jìn)行補(bǔ)償操作。
  • TCC的優(yōu)點(diǎn)是可以保證強(qiáng)一致性和數(shù)據(jù)完整性,缺點(diǎn)是實(shí)現(xiàn)難度較高,需要對(duì)每個(gè)參與者進(jìn)行修改。因此,它適用于需要保證事務(wù)強(qiáng)一致性和數(shù)據(jù)完整性的場(chǎng)景,例如金融和電商領(lǐng)域。

在實(shí)現(xiàn)TCC時(shí),可以使用分布式事務(wù)管理器來(lái)協(xié)調(diào)各個(gè)參與者的操作,例如阿里巴巴的Seata和美團(tuán)的TCC-transaction。這些分布式事務(wù)管理器提供了可靠的分布式事務(wù)協(xié)調(diào)功能,可以大大簡(jiǎn)化TCC的實(shí)現(xiàn)。

SAGA事務(wù)

SAGA(Saga)是一種分布式事務(wù)方案,它通過(guò)使用長(zhǎng)事務(wù)(Long Transaction)和補(bǔ)償事務(wù)(Compensating Transaction)來(lái)保證分布式環(huán)境下事務(wù)的一致性。

在SAGA中,每個(gè)參與者是一個(gè)服務(wù),通過(guò)發(fā)送和接收消息來(lái)協(xié)調(diào)事務(wù)的執(zhí)行。具體流程如下:

  1. 事務(wù)發(fā)起方(Saga orchestrator)向參與者發(fā)送執(zhí)行請(qǐng)求。
  2. 參與者接收到請(qǐng)求,并執(zhí)行相關(guān)的操作。
  3. 如果所有參與者成功執(zhí)行了操作,則事務(wù)進(jìn)入提交(Commit)階段,所有參與者將數(shù)據(jù)提交到數(shù)據(jù)存儲(chǔ)中。
  4. 如果任何一個(gè)參與者執(zhí)行失敗,則事務(wù)進(jìn)入回滾(Rollback)階段,所有參與者將執(zhí)行補(bǔ)償事務(wù),將之前的操作撤銷。補(bǔ)償事務(wù)需要與主要事務(wù)保持一致,例如刪除一條記錄的補(bǔ)償事務(wù)就是插入一條記錄。
  5. 如果所有參與者都成功執(zhí)行了補(bǔ)償事務(wù),則事務(wù)最終回滾成功。

SAGA的優(yōu)點(diǎn)是實(shí)現(xiàn)相對(duì)簡(jiǎn)單且易于擴(kuò)展,缺點(diǎn)是可能會(huì)出現(xiàn)部分提交的情況,需要通過(guò)補(bǔ)償機(jī)制來(lái)保證數(shù)據(jù)完整性。因此,它適用于需要保證最終一致性和容錯(cuò)性的場(chǎng)景,例如物流和電影票務(wù)領(lǐng)域。

在實(shí)現(xiàn)SAGA時(shí),可以使用分布式事務(wù)管理器來(lái)協(xié)調(diào)各個(gè)參與者的操作,例如Apache ServiceComb Saga和華為的ServiceStage。這些分布式事務(wù)管理器提供了可靠的分布式事務(wù)協(xié)調(diào)功能,可以大大簡(jiǎn)化SAGA的實(shí)現(xiàn)。

適用場(chǎng)景

TCC是一種通過(guò)將事務(wù)拆解成Try、Confirm和Cancel三個(gè)步驟來(lái)實(shí)現(xiàn)的分布式事務(wù)方案。在TCC中,每個(gè)參與者都需要實(shí)現(xiàn)這三個(gè)步驟來(lái)協(xié)調(diào)分布式事務(wù)的執(zhí)行。Try階段用于預(yù)留資源和鎖定資源,Confirm階段用于提交資源,Cancel階段用于釋放資源。TCC的優(yōu)點(diǎn)是可以保證強(qiáng)一致性和數(shù)據(jù)完整性,缺點(diǎn)是實(shí)現(xiàn)難度較高,且需要對(duì)每個(gè)參與者進(jìn)行修改。

SAGA是一種基于消息的分布式事務(wù)方案,通過(guò)使用長(zhǎng)事務(wù)和補(bǔ)償事務(wù)來(lái)保證分布式環(huán)境下的事務(wù)一致性。在SAGA中,每個(gè)參與者都是一個(gè)服務(wù),通過(guò)發(fā)送和接收消息來(lái)協(xié)調(diào)事務(wù)的執(zhí)行。如果一個(gè)參與者執(zhí)行失敗,它會(huì)發(fā)送一條補(bǔ)償消息來(lái)撤銷之前的操作,從而保持事務(wù)的一致性。SAGA的優(yōu)點(diǎn)是實(shí)現(xiàn)相對(duì)簡(jiǎn)單且易于擴(kuò)展,缺點(diǎn)是可能會(huì)出現(xiàn)部分提交的情況,需要通過(guò)補(bǔ)償機(jī)制來(lái)保證數(shù)據(jù)完整性。

總之,TCC適用于需要保證強(qiáng)一致性和數(shù)據(jù)完整性的場(chǎng)景,而SAGA適用于需要保證最終一致性和容錯(cuò)性的場(chǎng)景。具體選擇哪種方案需要根據(jù)具體業(yè)務(wù)場(chǎng)景和技術(shù)架構(gòu)來(lái)進(jìn)行評(píng)估和決策。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-621239.html

到了這里,關(guān)于3分鐘帶你了解下分布式事務(wù)TCC與SAGA的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Java微服務(wù)分布式事務(wù)框架seata的TCC模式

    Java微服務(wù)分布式事務(wù)框架seata的TCC模式

    ??作者主頁(yè):青花鎖 ??簡(jiǎn)介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者??、Java微服務(wù)架構(gòu)公號(hào)作者?? ??簡(jiǎn)歷模板、學(xué)習(xí)資料、面試題庫(kù)、技術(shù)互助 ??文末獲取聯(lián)系方式 ?? 專欄 描述 Java項(xiàng)目實(shí)戰(zhàn) 介紹Java組件安裝、使用;手寫(xiě)框架等 Aws服務(wù)器實(shí)戰(zhàn) Aws Linux服務(wù)器上操作nginx、git、JDK、Vue Jav

    2024年03月23日
    瀏覽(24)
  • 《微服務(wù)實(shí)戰(zhàn)》 第三十章 分布式事務(wù)框架seata TCC模式

    《微服務(wù)實(shí)戰(zhàn)》 第三十章 分布式事務(wù)框架seata TCC模式

    第三十章 分布式事務(wù)框架seata TCC模式 第二十九章 分布式事務(wù)框架seata AT模式 本章節(jié)介紹分布式事務(wù)框架seata TCC模式,上一章節(jié)介紹seata以及集成到Springboot、微服務(wù)框架里。 一個(gè)分布式的全局事務(wù),整體是 兩階段提交 的模型。全局事務(wù)是由若干分支事務(wù)組成的,分支事務(wù)要

    2024年02月12日
    瀏覽(24)
  • 【計(jì)算系統(tǒng)】5分鐘了解超算,高性能計(jì)算,并行計(jì)算,分布式計(jì)算,網(wǎng)格計(jì)算,集群計(jì)算以及云計(jì)算的區(qū)別

    【計(jì)算系統(tǒng)】5分鐘了解超算,高性能計(jì)算,并行計(jì)算,分布式計(jì)算,網(wǎng)格計(jì)算,集群計(jì)算以及云計(jì)算的區(qū)別

    超級(jí)計(jì)算機(jī)(Supercomputer)是一種計(jì)算力極強(qiáng)的計(jì)算機(jī),學(xué)術(shù)界通常稱這一領(lǐng)域?yàn)楦咝阅苡?jì)算(High-Performance Computing)。超級(jí)計(jì)算機(jī)主要為最頂尖的科學(xué)研究服務(wù),包括核聚變模擬、石油勘探、量子力學(xué)、氣候模擬、癌癥研究、基因組學(xué)、分子動(dòng)力學(xué)、飛機(jī)和航天器空氣動(dòng)力學(xué)

    2024年02月06日
    瀏覽(25)
  • 分布式:一文吃透分布式事務(wù)和seata事務(wù)

    分布式:一文吃透分布式事務(wù)和seata事務(wù)

    什么是事務(wù) 事務(wù)是并發(fā)控制的單位,是用戶定義的一個(gè)操作序列。 事務(wù)特性 原子性(Atomicity): 事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中包括的諸操作要么全做,要么全不做。 一致性(Consistency): 事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。一致性

    2024年02月07日
    瀏覽(21)
  • 【分布式事務(wù)】Seata 開(kāi)源的分布式事務(wù)解決方案

    【分布式事務(wù)】Seata 開(kāi)源的分布式事務(wù)解決方案

    Seata 是一款開(kāi)源的分布式事務(wù)解決方案,致力于提供高性能和簡(jiǎn)單易用的分布式事務(wù)服務(wù)。Seata 將為用戶提供了 AT、TCC、SAGA 和 XA 事務(wù)模式,為用戶打造一站式的分布式解決方案。 阿里巴巴作為國(guó)內(nèi)最早一批進(jìn)行應(yīng)用分布式(微服務(wù)化)改造的企業(yè),很早就遇到微服務(wù)架構(gòu)下

    2024年02月02日
    瀏覽(18)
  • 【分布式】分布式事務(wù):2PC

    【分布式】分布式事務(wù):2PC

    分布式事務(wù)的問(wèn)題可以分為兩部分: 并發(fā)控制 concurrency control 原子提交 atomic commit 分布式事務(wù)問(wèn)題的產(chǎn)生場(chǎng)景:一份數(shù)據(jù)被分片存在多臺(tái)服務(wù)器上,那么每次事務(wù)處理都涉及到了多臺(tái)機(jī)器。 可序列化(并發(fā)控制): 定義了事務(wù)執(zhí)行的正確性 真正地并行執(zhí)行事務(wù),獲得真正的

    2024年02月09日
    瀏覽(19)
  • Redis分布式鎖和分布式事務(wù)

    Redis分布式鎖和分布式事務(wù) 一、Redis分布式鎖 1.1 watch和事務(wù)實(shí)現(xiàn)分布式鎖 原理是通過(guò)watch來(lái)觀察一個(gè)變量,一個(gè)線程在操作的時(shí)候,其他線程會(huì)操作失敗,相當(dāng)于樂(lè)觀鎖。 1.2 setnx實(shí)現(xiàn)分布式鎖 原理是通過(guò)setnx設(shè)置一個(gè)變量,設(shè)置成功的線程搶到鎖,執(zhí)行相關(guān)的業(yè)務(wù),執(zhí)行完畢

    2024年02月09日
    瀏覽(25)
  • 【分布式】java實(shí)現(xiàn)分布式事務(wù)的五種方案

    【分布式】java實(shí)現(xiàn)分布式事務(wù)的五種方案

    用戶支付完成會(huì)將支付狀態(tài)及訂單狀態(tài)保存在訂單數(shù)據(jù)庫(kù)中,由訂單服務(wù)去維護(hù)訂單數(shù)據(jù)庫(kù)。由庫(kù)存服務(wù)去維護(hù)庫(kù)存數(shù)據(jù)庫(kù)的信息。下圖是系統(tǒng)結(jié)構(gòu)圖: 如何實(shí)現(xiàn)兩個(gè)分布式服務(wù)(訂單服務(wù)、庫(kù)存服務(wù))共同完成一件事即訂單支付成功自動(dòng)減庫(kù)存,這里的關(guān)鍵是如何保證兩個(gè)

    2024年04月11日
    瀏覽(21)
  • 微服務(wù)·數(shù)據(jù)一致-事務(wù)與分布式事務(wù)

    微服務(wù)·數(shù)據(jù)一致-事務(wù)與分布式事務(wù)

    事務(wù)是計(jì)算機(jī)科學(xué)和數(shù)據(jù)庫(kù)管理中的一個(gè)關(guān)鍵概念,用于確保數(shù)據(jù)的一致性和可靠想。事務(wù)管理是大多數(shù)應(yīng)用程序和數(shù)據(jù)庫(kù)系統(tǒng)中不可或缺的一部分。分布式事務(wù)擴(kuò)展了事務(wù)的概念,用于多個(gè)分布式系統(tǒng)和服務(wù)的數(shù)據(jù)一致性管理。本調(diào)查報(bào)告將深入探討事務(wù)和分布式事務(wù)的概

    2024年02月09日
    瀏覽(20)
  • Seata分布式事務(wù)

    Seata分布式事務(wù)

    本地事務(wù),也就是傳統(tǒng)的單機(jī)事務(wù)。在傳統(tǒng)數(shù)據(jù)庫(kù)事務(wù)中,必須要滿足四個(gè)原則: 分布式事務(wù),就是指不是在單個(gè)服務(wù)或單個(gè)數(shù)據(jù)庫(kù)架構(gòu)下,產(chǎn)生的事務(wù),例如: 跨數(shù)據(jù)源的分布式事務(wù) 跨服務(wù)的分布式事務(wù) 綜合情況 完成上面的操作需要訪問(wèn)三個(gè)不同的微服務(wù)和三個(gè)不同的

    2024年02月09日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包