分布式系統中的分布式事務

2021-10-04 03:05:40 字數 800 閱讀 9068

分布式事務中可以借助mq訊息系統來進行事務控制,這一點與可靠訊息最終一致方案一樣。看來mq中介軟體確實在乙個分布式系統架構中,扮演者重要的角色。最大努力通知方案是比較簡單的分布式事務方案,它本質上就是通過定期校對,實現資料一致性。

中介軟體如何保證訊息的一致性:問題的問法多種多樣,怎麼保證兩個伺服器的通訊同步更新成功,怎麼解決分布式事務。網路不好,造成的資料丟失問題。

第一步:首先主動方有個預處理的動作,就是插入一條資料到資料庫

日誌表中,

這條資料的狀態為待確認,然後執行生產者的業務**時,如果失敗就回滾,捕捉異常,把預處理的這條資料給刪除了,

資料庫就沒有資料了,消費方就不會有訊息執行。雙方資料一致。

如果成功的話,修改資料的狀態,把待確認改為待傳送,再把資訊發給mq,

在mq傳送資訊到消費方有可能導致資料丟失,消費方無法接收資訊,那麼之前插入資料庫中那條資料還是處於待傳送狀態,

正常情況下消費方如果能接收資料,處理完消費方就會鏈結到資料庫把待傳送那條資訊刪除,刪除成功就說明主動方跟消費方都執行成功.

直接刪除,不做物理刪除,原因:資料量會越來越多。導致伺服器的查詢速度變慢。

如果資料丟失,消費方無法接收資訊,生產者有個定時任務,會不斷去資料庫找狀態為待傳送的那條記錄,

如果找到待傳送這條資料就再次把資訊發到mq,因為不會無限次數傳送,因此如果傳送6次均為失敗就會轉人工客服,

比如傳送簡訊通知客服,客服去排查哪條訊息再告訴運維,在排查消費端為什麼接收不到,這樣就可以保證資料的最終一致性.

缺點,缺少實時性。只能確保訊息的最終一致性。

優點,對比實時性,效率是非常高的。

分布式 分布式事務

是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...

分布式之分布式事務

被人問到分布式事務,之前學rabbitmq 的時候學到過rabbitmq 高階的事務,因為沒有用過,所有沒有回答好。這裡總結一下。1.單機版事務。事務的四大特性 acid a.原子性 b.一致性 c.隔離性 d.永續性 單機事務可以通過設定事務的隔離級別 參見spring 的事務隔離級別 2.分布式...

分布式理論 分布式事務

資料庫事務 事務的基本特性 事務有4個非常重要的特性,即我們常說的 acid atomicity 原子性 是說事務是乙個不可分割的整體,所有操作要麼全做,要麼全不做 只要事務中有乙個操作出錯,回滾到事務開始前的狀態的話,那麼之前已經執行的所有操作都是無效的,都應該回滾到開始前的狀態。consiste...