精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

分布式系統一致性保障方案總結

數據庫 分布式
本文重點來闡述下關于一致性的方案,包括強一致性和最終一致性。 而在互聯網領域, 很多情況下都是犧牲強一致性,來達到高可用性, 系 統往往只需要保證“最終一致性”,只要這個最終時間是在用戶可以接受的范圍內即可。

引言

在互聯網系統中,理想的情況下,肯定是希望系統能夠同時滿足“一致性”、“可用性”和“分區容忍性”。 但是基于熟悉的CAP定律也好,還是BASE理論, 我們知道,在實際情況中是不可能實現的。而在金融領域,一致性是最為關注的特性,任何情況下都必須滿足一致性。關于CAP定律和BASE理論,本文不再介紹,有興趣的同學可以自行百度一下。本文重點來闡述下關于一致性的方案,包括強一致性和最終一致性。 而在互聯網領域, 很多情況下都是犧牲強一致性,來達到高可用性, 系 統往往只需要保證“最終一致性”,只要這個最終時間是在用戶可以接受的范圍內即可。

[[204571]]

數據庫本地事務

數據庫事務肯定是強一致性的方案,而且是一致性最簡單的方案,因為一致性是數據庫的事務來保證的,業務層不需要關心細節。比較典型的應用是在返現場景下,針對帶有返現的交易的退款,需要一次性退兩筆交易單,采用的就是通過數據庫本地事務來完成的。具體如下:

分布式系統一致性保障方案總結

用戶A花了100元購買商戶B的商品,購買結束后返現給用戶A 2元。 這是兩筆交易,原始交易是100元,返現交易是2元。 那么發生退款時,需要保證兩筆交易同時都退款。這個就是直接采用數據庫本地事務實現的,即一次退款請求,兩筆交易同時退款。

總結: 數據庫事務的優點是簡單,業務層關心的很少。但是對于一個可用性很高的系統來說,所有的業務都揉在數據庫事務執行,會讓事務非常的復雜,不利于系統的擴展和維護。

兩階段提交

除了數據庫能夠保證本地的一致性,對于互聯網系統來說,更多是分布式系統。提到分布式系統,必然提到分布式事務。而分布式事務中,就不得不介紹兩階段提交協議(2pc)。 而在核心系統,兩階段提交的方案主要應用在 分布式數據庫NesioDB和交易賬務分離的柔性事務中 。

分布式數據庫NesioDB是由百度DBA和百度錢包聯合開發的,支持分布式事務的數據庫,目前已經應用在百度錢包的核心交易業務上,并穩定運行兩年。該數據庫的設計要求是讓使用者能夠像使用單機數據庫一樣的使用分布式數據庫,因此實現的分布式事務,滿足單機事務的ACID原則。關于分布式事務的一致性,采用的就是兩階段提交的方式來實現的,并且滿足分布式事務模型。如下圖所示。

***階段是準備階段。

分布式系統一致性保障方案總結

DTM 通知所有參與事務的各個 RM,給每個 RM 發送 prepare 消息。RM 接收到消息后進入準備階段后,要么直接返回失敗,要么創建并執行本地事務,寫本地事務日志(redo 和 undo 日志),但是 不提交(此處只保留***一步耗時最少的提交操作給第二階段執行)。

第二階段是提交/回滾階段。

分布式系統一致性保障方案總結

DTM 收到 RM 準備階段的失敗消息或者獲取 RM 返回消息超時,則直接給 RM 發送回滾(rollback)消息,否則發送提交(commit)消息。RM 根據 TM 的指令執行提交或者回滾,執行完成后釋放所有事務處理過程中使用的鎖(***階段釋放鎖)。

數據庫層面的兩階段提交,可以用來保證分布式事務的一致性,使得使用者使用分布式事務和單機事務一樣方便。而兩階段提交的另外一種實現,即TCC(Try-Confirm-Cancel), 也就是業務層面的柔性事務。 交易和賬務分離的一致性實現,就是采用這種柔性事務來完成的。首先來說說柔性事務,它涉及 3 個模塊, 主業務、從業務 和 活動管理器(協作者)。

下面這張圖是有關柔性事務一張經典的圖。

分布式系統一致性保障方案總結

***階段:主業務服務分別調用所有從業務服務的 try 操作,并在活動管理器中記錄所有從業務服務。當所有從業務服務 try 成功或者某個從業務服務 try 失敗時,進入第二階段。

第二階段:活動管理器根據***階段從業務服務的 try 結果來執行 confirm 或 cancel 操作。如果***階段所有從業務服務都 try 成功,則協作者調用所有從業務服務的 confirm 操作,否則,調用所有從業務服務的 cancel 操作。

在第二階段中,confirm 和 cancel 同樣存在失敗情況,所以需要對這兩種情況做 異常處理以保證數據一致性。

  1. Confirm 失敗:則回滾所有 confirm 操作并執行 cancel 操作。
  2. Cancel 失敗:從業務服務需要提供自動 cancel 機制,以保證 cancel 成功。

如果對應到交易和賬務分離的項目中,流程如下:

***階段: 主業務服務調用交易和賬務執行try的操作,交易開啟事務,做業務上的判斷和寫入,但是不提交事務。賬務層面做資源的鎖定。

第二階段: 賬務資源鎖定成功,交易提交事務成功,然后發送confirm 給賬務。 如果交易提交失敗,則發送cancel對資源進行釋放。如果在confirm或者cancel出現異常情況下,同樣需要對異常進行處理來保證數據一致性。

總結: 這種方式實現難度不算太高,比較適合傳統的單體應用,在同一個方法中存在跨庫操作的情況。

回滾機制

在分布式架構中,功能 X,需要去協調后端的 A、B 甚至更多的原子服務。那么問題來了,假如 A 和 B 其中一個調用失敗了,那可怎么辦呢? 這個時候,可以用回滾機制來保證一致性。 該機制應用在 錢包配合信貸做的聯合放貸項目 中。 該項目中總共有兩個原子操作,如下圖所示。

分布式系統一致性保障方案總結

兩個原子操作,分別是資金歸集和資金到卡。所謂資金歸集,是將商戶A的錢和商戶B的錢歸集到中間商戶C。而資金到卡,是將中間商戶C的錢,通過銀行系統打入到D用戶的銀行卡。這兩個操作要滿足一致性,即資金歸集成功,然后打款到用戶的卡成功。或者是商戶A和B的錢沒變化,資金到卡失敗。 總而言之,是不允許資金停留在中間商戶C的。

針對這種情況,通過回滾機制,提供一個強大的回滾操作來實現上述的一致性。比如資金歸集成功,而資金到卡失敗,那么對歸集的資金操作做回滾處理,也就是資金從中間商戶C分別回到商戶A和B中。

總結: 這種方式缺點比較多,通常在復雜場景下是不推薦使用的,除非是非常簡單的場景,非常容易提供回滾,而且依賴的服務也非常少的情況。這種實現方式會造成代碼量龐大,耦合性高。而且非常有局限性,因為有很多的業務是無法很簡單的實現回滾的,如果串行的服務很多,回滾的成本實在太高。

本地消息表

這種實現方式的思路,其實是源于 ebay,后來通過支付寶等公司的布道,在業內廣泛使用。其基本的設計思想是將遠程分布式事務拆分成一系列的本地事務。如果不考慮性能及設計優雅,借助關系型數據庫中的表即可實現。本地消息的方式,在應用在 錢包非核心業務異步化改造項目 中。該項目當時改造的方案如下:

  1. 核心業務實時寫入交易表
  2. 非核心業務非實時異步寫入交易表按照用戶維度的交易查詢表。

交易表是交易維度的,而為了滿足用戶的查詢性能,需要備份復制相同的按照用戶維度的交易查詢表。 從業務屬性上來看,交易表是核心業務,交易查詢表是非核心業務(查詢使用)。而實現上,交易表是核心數據庫,而查詢表則屬于非核心數據庫。 但是, 這兩者需要滿足一致性。 關于這類一致性保障,如果有不丟消息的消息隊列,則很容易解決。萬一沒有這類消息隊列呢? 其實,使用本地消息表,也一樣可以解決。

分布式系統一致性保障方案總結

如圖所示,是利用本地消息表保持最終一致性的應用。 具體如下:

  1. 業務A將本地消息和A業務數據以本地事務的方式寫入DB1;
  2. 業務A寫完本地事務后,發送消息給MQ。
  3. MQ推送消息給業務B,業務B執行消息,寫入DB2.
  4. 由于MQ不能保證消息不丟,如果消息丟失了,則需要通過業務C,讀取DB1的消息,然后rpc發送給業務B重新執行。

當然,如何判斷DB1的消息已經消費,這個可以通過DB2的事務執行結果來判斷。

總結: 上訴的方式是一種非常經典的實現,基本避免了分布式事務,實現了“最終一致性”。但是,關系型數據庫的吞吐量和性能方面存在瓶頸,頻繁的讀寫消息會給數據庫造成壓力。所以,在真正的高并發場景下,該方案也會有瓶頸和限制的。

補償機制

補償機制在分布式系統中,應用最為廣泛。在錢包應用的場景比較多,比如 核心收銀臺和付款到卡 。 核心收銀臺中,當請求銀行扣款,扣款成功后,自身系統掛掉了。這個時候就會有一個后臺程序,我們也稱作補單程序來開始處理這類流程,讓原來中間斷掉的流程繼續走下去。

一般成熟的系統中,對于級別較高的服務和接口,整體的可用性通常都會很高。如果有些業務由于瞬時的網絡故障或調用超時等問題,那么這種補償機制其實是非常有效的。

總結

本文通過核心系統的幾個具體實際項目,闡述了如何保證分布式系統的一致性。每一種方案都有一定的特征和應用場景。 其實分布式系統的事務一致性本身是一個技術難題,目前沒有一種很簡單很***的方案能夠應對所有場景。具體還是要使用者根據不同的業務場景去抉擇。

責任編輯:未麗燕 來源: HI技術公眾號
相關推薦

2025-03-14 08:00:00

分布式系統服務器一致性

2017-04-06 11:59:19

分布式服務化系統

2019-10-11 23:27:19

分布式一致性算法開發

2024-05-30 07:00:51

2017-09-21 10:59:36

分布式系統線性一致性測試

2021-07-28 08:39:25

分布式架構系統

2021-06-06 12:45:41

分布式CAPBASE

2020-05-29 14:46:23

3PC協議分布式系統

2019-09-05 08:43:34

微服務分布式一致性數據共享

2021-11-22 16:30:30

分布式一致性分布式系統

2021-06-16 08:33:02

分布式事務ACID

2015-10-19 10:42:37

分布式一致性應用系統

2023-11-01 10:11:00

Java分布式

2024-11-28 10:56:55

2021-06-03 15:27:31

RaftSOFAJRaft

2022-06-07 12:08:10

Paxos算法

2018-03-19 09:50:50

分布式存儲系統

2021-10-27 10:55:29

分布式

2020-05-07 11:58:07

分布式系統架構

2025-03-27 03:00:00

點贊
收藏

51CTO技術棧公眾號

欧美亚洲一区二区三区四区| av激情综合网| 久久久精品日本| 日本在线观看视频一区| 污视频在线免费观看网站| 成人av影院在线| 国产福利视频一区| 妺妺窝人体色www聚色窝仙踪| 久久久亚洲欧洲日产| 91传媒视频在线播放| 日韩精品福利片午夜免费观看| 日韩中文字幕免费在线观看| 国产精品毛片| 久久激情视频久久| 国产老熟女伦老熟妇露脸| 日韩网站中文字幕| 亚洲一区国产视频| 亚洲精品国产系列| 天堂在线资源库| 麻豆精品精品国产自在97香蕉| 欧美国产日本在线| 天天干天天操天天拍| 亚洲综合网狠久久| 在线播放中文一区| 成人一级片网站| 神马午夜伦理不卡 | 在线视频一区二区免费| 国产精品无码电影在线观看| 大乳在线免费观看| eeuss影院一区二区三区| 91探花福利精品国产自产在线| 91视频免费网址| 欧美日韩一卡| 国产一区二区三区中文| 在线观看av中文字幕| 日本99精品| 在线成人高清不卡| 999香蕉视频| 激情视频网站在线播放色| 亚洲激情图片一区| 午夜啪啪福利视频| 日本免费中文字幕在线| 欧美精彩视频一区二区三区| 免费看成人午夜电影| 色丁香婷婷综合久久| 成人午夜伦理影院| 波多野结衣一区二区三区在线观看| 伊人成人在线观看| 日本欧美一区二区三区| 日韩av成人在线观看| 探花视频在线观看| 午夜在线a亚洲v天堂网2018| 77777亚洲午夜久久多人| 日韩三级一区二区三区| 亚洲精品一级| 国内精品久久久久伊人av| 国产精品.www| 亚洲伦理精品| 欧美又大又粗又长| 69视频免费在线观看| 麻豆精品网站| 国产精品极品尤物在线观看| 中文字幕人妻一区二区在线视频| 日韩电影一二三区| 国产精品美女免费视频| 中文字幕在线观看1| 久久精品国产第一区二区三区| 国产精品免费看久久久香蕉| 中文字幕永久在线观看| 久久国产福利国产秒拍| 亚洲aⅴ男人的天堂在线观看| 国产三级精品在线观看| 成人妖精视频yjsp地址| 精品一区2区三区| 日本五码在线| 国产精品美女一区二区在线观看| 亚洲午夜精品国产| 成人短视频在线| 亚洲国产精品一区二区www在线 | 黄色片在线观看免费| 日韩在线观看| 欧美成人自拍视频| 99精品视频99| 日本不卡视频一二三区| 成人啪啪免费看| 成人爽a毛片一区二区| 99久久亚洲一区二区三区青草 | 99中文字幕在线| 66精品视频在线观看| 日韩精品视频在线观看免费| 日韩免费成人av| 欧美区日韩区| 国产91露脸中文字幕在线| 中文字幕 视频一区| 国产精品一区久久久久| 久久精品国产99精品国产亚洲性色| 国产综合在线观看| 一区二区三区四区在线免费观看| 精品这里只有精品| 看片一区二区| 亚洲国产精品视频在线观看 | 精品国产91乱码一区二区三区四区 | 在线观看免费视频一区| 成人激情黄色小说| 天天综合狠狠精品| www.youjizz.com在线| 疯狂做受xxxx高潮欧美日本| 中文字幕中文在线| 亚洲自拍电影| 欧美激情啊啊啊| 成人黄色三级视频| 成人精品视频一区二区三区| 神马影院午夜我不卡| 国产啊啊啊视频在线观看| 欧美午夜一区二区三区免费大片| 老司机午夜免费福利| 91综合久久一区二区| 日本成人黄色片| 欧美性受xxxx狂喷水| 中文字幕一区二区三区在线播放| 国产二级片在线观看| crdy在线观看欧美| 日韩av最新在线观看| 免费在线黄色片| 久久精品国产一区二区三| 久久久com| 伊人手机在线| 欧美另类videos死尸| 国产一级久久久久毛片精品| 亚洲精选在线| 99视频在线免费观看| 日本中文字幕在线播放| 色综合天天在线| 自拍视频一区二区| 黑丝一区二区三区| 亚洲va久久久噜噜噜| 亚乱亚乱亚洲乱妇| 色8久久精品久久久久久蜜| 亚洲午夜久久久久久久久| 91精品啪在线观看国产18| 国产精品欧美日韩| 伦理片一区二区三区| 精品国产户外野外| 黄色国产在线观看| 日韩午夜高潮| 狠狠爱一区二区三区| 国精产品一区一区三区mba下载| 91精品午夜视频| 一区二区三区影视| 久久国产成人午夜av影院| 亚洲成人网上| 成人国产精品一区二区免费麻豆| 一二美女精品欧洲| 亚洲午夜在线播放| 国产精品美女久久久久aⅴ| 日日躁夜夜躁aaaabbbb| 成人精品天堂一区二区三区| 国产精品久久久久av免费| 国产高清一级毛片在线不卡| 欧美自拍偷拍一区| 日本在线观看网址| 精品一区二区免费在线观看| 裸体裸乳免费看| 日本99精品| 97精品视频在线| 欧美人体大胆444www| 在线亚洲人成电影网站色www| 51妺嘿嘿午夜福利| 理论片日本一区| 三年中国中文在线观看免费播放 | 国产精品.com| 亚洲优女在线| 国产亚洲欧洲高清| 午夜视频网站在线观看| 亚洲欧美综合网| 久久精品aⅴ无码中文字字幕重口| 狠狠爱www人成狠狠爱综合网| 精品产品国产在线不卡| 成人开心激情| 久久精品视频导航| 黄色福利在线观看| 欧美视频免费在线| 992在线观看| 丰满少妇久久久久久久| 日本精品一区在线观看| 日韩精品欧美| 国产欧美日韩一区| 日韩av中字| 精品中文字幕在线2019| 三级视频网站在线| 欧美高清你懂得| 国产精品999在线观看| 亚洲国产精品成人综合色在线婷婷 | 欧美亚洲色综久久精品国产| 国产乱人伦偷精品视频免下载| 久激情内射婷内射蜜桃| 欧美综合视频| 国产精品福利视频| 九九九精品视频| 午夜精品蜜臀一区二区三区免费 | 四虎永久在线精品无码视频| 久久久久久久久久久久久久| 精品国产免费久久久久久尖叫| 久久91超碰青草在哪里看| 久久久久久久国产精品视频| 992tv免费直播在线观看| 精品国产露脸精彩对白| 亚洲无码久久久久| 欧美午夜视频一区二区| 久久久久无码国产精品不卡| 欧美激情中文字幕一区二区| 国产国语老龄妇女a片| 蜜桃久久精品一区二区| 人妻有码中文字幕| 狠狠爱综合网| 三年中国中文在线观看免费播放| 欧美人与物videos另类xxxxx| 99免费在线观看视频| 人人玩人人添人人澡欧美| 日韩av免费看| 国产一二在线播放| 欧美日韩国产成人在线| 免费网站成人| 中文字幕亚洲无线码a| 日韩一二三四| 亚洲国产精品字幕| 性猛交xxxx乱大交孕妇印度| 欧美日韩三级一区二区| 国产主播第一页| 日韩欧美中文字幕在线观看| 日本少妇毛茸茸高潮| 一区二区三区成人在线视频| 亚洲一二三在线观看| 中文字幕日韩av资源站| 国产视频三区四区| 久久精品一区二区三区不卡牛牛| 国产激情视频网站| 成人网在线免费视频| 成人做爰69片免费| 国产成人自拍网| 午夜激情视频网| 国产一区二区三区在线观看免费| 黄色小视频免费网站| 久久99久久久欧美国产| 在线免费视频一区| 欧美aaaaa成人免费观看视频| 成人在线免费播放视频| 久久一区中文字幕| 免费男同深夜夜行网站| 日韩精品一二区| 亚洲免费av一区二区三区| 青青草国产精品97视觉盛宴| 超碰在线97免费| 免费黄网站欧美| 在线观看免费不卡av| 国产一区二区三区免费播放| 免费高清视频在线观看| 国产v日产∨综合v精品视频| 亚洲免费观看在线| 成人av在线播放网址| av在线网站观看| 久久久精品黄色| 国产欧美小视频| 亚洲欧洲av另类| 国产一级淫片免费| 欧美丝袜美女中出在线| 国产乱码77777777| 91精品一区二区三区久久久久久 | 警花观音坐莲激情销魂小说| 欧美三级免费| 国产成人久久婷婷精品流白浆| 日日摸夜夜添夜夜添亚洲女人| 色悠悠久久综合网| 国产在线精品免费| 久久性爱视频网站| 久久―日本道色综合久久| 国产传媒在线看| 亚洲午夜精品久久久久久久久| 国产精品一区二区三区四| 在线中文字幕不卡| 草草视频在线播放| 亚洲九九九在线观看| 免费黄色网页在线观看| 性欧美激情精品| 四虎永久精品在线| 国外成人免费视频| 成人羞羞视频在线看网址| 一道精品一区二区三区| 激情综合网址| www午夜视频| 白白色亚洲国产精品| 极品尤物一区二区| 亚洲一区二区精品3399| 美女又爽又黄免费视频| 欧美三级中文字| 欧美77777| 久久久国产精品亚洲一区| а√天堂资源官网在线资源 | www.豆豆成人网.com| 青青成人在线| 极品中文字幕一区| 一区二区在线免费看| 99re这里只有精品首页| 激情高潮到大叫狂喷水| 黑人欧美xxxx| 国产丰满美女做爰| 亚洲少妇中文在线| 黄色污污视频在线观看| 国产啪精品视频| 美女午夜精品| 今天免费高清在线观看国语| 日本不卡高清视频| 搡老熟女老女人一区二区| 一区二区三区在线免费| 在线观看毛片av| 亚洲午夜女主播在线直播| 96av在线| www久久99| 一区二区电影在线观看| 美女少妇一区二区| 91欧美激情一区二区三区成人| 久久激情免费视频| 337p亚洲精品色噜噜噜| 风间由美一区| 日韩av电影院| 欧美爱爱网站| 欧美亚洲日本一区二区三区 | 欧美亚洲免费在线一区| 婷婷亚洲一区二区三区| 久久久久亚洲精品| 日韩精品一区二区三区中文在线| 亚洲欧美久久234| 石原莉奈在线亚洲三区| 日本激情小视频| 亚洲成人免费av| 成人精品在线播放| 欧美黄色片免费观看| 亚洲图色一区二区三区| 51xx午夜影福利| 国产一区欧美日韩| 免费看特级毛片| 日韩一区二区中文字幕| 九色porny在线| 91九色单男在线观看| 久久久久久久久久久妇女| 亚洲18在线看污www麻豆| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 亚洲av无码乱码国产精品久久| 久久躁日日躁aaaaxxxx| av日韩在线免费观看| 日本精品免费视频| 国产一区二区免费看| 久久久精品视频免费观看| 91精品国产91久久久久久一区二区 | 久久国产三级| 中文字幕久精品免| 国产综合久久久久久鬼色 | 外国成人免费视频| 亚洲高清av一区二区三区| 亚洲影院久久精品| 少妇荡乳情欲办公室456视频| 亚洲91精品在线观看| 蜜臀av免费一区二区三区| 天堂在线资源视频| 国产精品国产三级国产普通话99| 国产同性人妖ts口直男| 欧美激情第一页xxx| 香蕉久久精品日日躁夜夜躁| 日韩免费高清在线| 国产精品久久久久三级| www.精品久久| 欧美一级bbbbb性bbbb喷潮片| 红桃成人av在线播放| 手机在线国产视频| 亚洲一区二区美女| 黄色在线观看网| 成人在线视频福利| 一区视频在线| 久操视频在线观看免费| 91精品午夜视频| 中文在线最新版地址| 伊人久久大香线蕉午夜av| 波多野结衣中文一区| 夜夜躁日日躁狠狠久久av| 久久久精品久久久| 啪啪激情综合网| 欧美日韩精品区别| 午夜精品久久久久久久99水蜜桃| 嫩草在线播放| 4444kk亚洲人成电影在线| 亚洲一区一卡| 男人与禽猛交狂配| 亚洲一区二区久久| 日韩中文在线| 91精品无人成人www| 亚洲国产欧美另类丝袜| 日本视频在线免费观看| 国产精品免费一区二区三区四区| 日精品一区二区| www.youjizz.com亚洲|