數據庫 - 分佈式事務

分片維度

1.哈希切片

2.時間切片(適合有明顯時間特點的數據

分佈式事務

1.兩階段提交協議

方案:分爲準備階段與提交階段,等待所有參與者準備完成後再提交。

優點:基於該協議,事務管理器能最大限度保證跨數據庫事務的原子性,是分佈式系統環境下最嚴格的實現方案。

缺點:性能問題,難以進行水平伸縮,鎖定資源與消費資源之間時間差隨參與者數目增加而拉長,易產生死鎖或拖慢響應速度。在互聯網行業中不常使用。

2.最大努力保證模式

方案:更新多個資源時,將提交儘量延後到最後一刻處理,方便回滾。非常通用。

優點:性能損耗較少。

缺點:多個分佈式操作可能相互嵌套,需要對資源提交順序進行充分考慮與評估,才能規避風險。

3.事務補償機制

方案:跨庫操作通過補償與重試保證一致性。

優點:性能損耗較少,較爲方便處理。

缺點:需要記錄環境、信息、狀態、步驟等,後續通過重試達到一致性。

事務路由

1.自動提交的事務路由

依賴JDBC數據源的自動提交事務特性,不需要手動操作與配置,但只能滿足簡單的業務邏輯需求。

2.可編程事務路由

通常採用Spring的聲明式事務管理數據庫,通過配置文件使用。

3.聲明式事務路由

一般通過註解實現。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章