爲何用分佈式數據庫
隨着業務量激增,單個數據庫的性能產生瓶頸的時候,咱們會對數據庫進行分區,這時單個數據庫的事務已經不能適應這種狀況了,在集羣環境下,想保證集羣事務ACID是很難的,即便能達到那麼效率和性能會大幅降低
後來就引入一個新的理論CAP
Consistency(一致性), 數據一致更新,全部數據變更都是同步的
Availability(可用性), 好的響應性能
Partition tolerance(分區容忍性) 可靠性
任何分佈式系統只可同時知足二點,無法三者兼顧。分佈式
下面給出一個分佈式事務方案
以下圖:性能
4補償 狀況分析:
當 1 成功 2 失敗 處理未成功的消息(從新發消息)
當 1 成功 2 成功 3 失敗 檢查B消息表中是否執行過UUID,執行過跳過2,直接3
最終達到一致性spa
優勢:經典實用
缺點:建消息表(單記錄有追述)事務
分佈式方案有不少,各有優缺點,適合本身的項目就好ip