前言
BASE是CAP理論的延伸,核心思想是:即使無法滿足強一致性(CAP中的一致性),也要滿足最終一致性。
BASE指Basically Available(基本可用),Soft State(軟狀態),Eventual Consistance(最終一致性)。
1. Basically Available(基本可用)
基本可用指:在分佈式系統中,某個節點出現宕機或者故障的時候,允許損失部分性能,保證核心服務可用。
通常在電商秒殺系統中,應對高併發的情況下,非核心服務層面會採用降級服務(商品推薦等)。
2.Soft State(軟狀態)
軟狀態指:在系統中存在中間狀態,該狀態不會影響系統的整體使用。
體現在:在分佈式存儲中一份數據至少2個副本及以上,允許不同節點之間數據副本同步的延遲。mysql異步複製也是一種體現
3.Eventual Consistance(最終一致性)
最終一致性指:分佈式系統中的數據副本經過一定的時間處理,最終能達到一致性的狀態。
弱一致性和強一致性相反,最終一致性是弱一致性的一種特殊情況。
BASE和ACID代表兩種截然相反的設計理念,ACID注重一致性,是傳統關係型數據庫(MySQL)的設計思路,BASE關注高可用性。