事務的特徵
分布式事務的由來
隨著系統使用者和資料的增加,原先的單體應用的程式架構向著soa或者微服務的架構發展,資料庫也會有分庫分表等操作來提高效率
單體應用
單體應用只有乙個操作的資料庫,完全可以直接依賴資料庫的acid特性和應用的事務管理來保證事務的執行,資料的一致性。
分布式應用
分布式應用中每個模組的應用都對應乙個資料庫時候,事務管理已經跨應用了,如上圖,加入張三下單買東西,要在使用者中心新增訂單記錄,訂單中心要去刪減庫存,對乙個整體的應用而言這是乙個原子操作,要麼兩個操作全部成功要麼全部失敗,來保證資料的一致性。
x/open dtp事務模型
x/open dtp 全稱x/open distributed transaction processing reference
是x/open這個組織定義出的一套分布式事務標準
x/open dtp中的角色
rm(resouces manager):資源管理器,管理一些共享資源的自治域,如提供對諸如資料庫之類的共享資源的訪問。
tm(transaction manager):事務管理器,管理全域性事務,協調事務的提交或者回滾,並協調故障恢復。
dtp模型執行流程
我的部落格
分布式 分布式事務
是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...
分布式事務之TCC事務模型
我們先套乙個業務場景進去,如下圖所示 那頁面點了支付按鈕,呼叫支付服務,那我們後台要實現下面三個步驟 1 訂單服務 修改訂單狀態 2 賬戶服務 扣減金錢 3 庫存服務 扣減庫存 達到事務的效果,要麼一起成功,要麼一起失敗!就要採取tcc分布式事務方案!tcc的全稱是 try confirm canc...
分布式事務 分布式事務的實現
如果在多個服務中需要對不同的資料庫進行操作。因為不同服務操作的資料庫都不同,所以保證在同乙個事務中完成操作顯然是不科學的。那實現分布式事務的思想 1 方法入口,建立一條日誌記錄,狀態定義為初始狀態,即儲存本條日誌記錄 可以儲存在資料庫中,也可以寫出到本地磁碟檔案 2 可以在非同步執行緒或在定時任務中...