BASE:是Basically Available(基本可用),Soft state(軟狀態),和 Eventually consistent(最終一致性)。
BASE理論,在對CAP定理中一致性和可用性衡量的結果。核心思想是即使沒法作到強一致性,也要經過合適的方式,達到最終一致性。數據庫
- Basically Available(基本可用):當分佈式系統出現故障時,容許損失部分的可用性。
- Soft state(軟狀態):容許應用在必定時間內的狀態不一樣步,且容許中間狀態。好比電商系統中,用戶下單完成並付款,因爲是分佈式架構,是否支付成功,是支付模塊完成的,系統不會等支付模塊返回是否支付成功再把結果返回給客戶的,而是先把狀態設置爲付款中,返回給客戶,而後支付模塊肯定成功,再把狀態設置爲付款完成。這樣,就能夠提升系統的相應速度。付款中,就是中間狀態。
- Eventually consistent(最終一致性):對於上面的軟狀態,並不會一直是軟狀態,一樣的例子,若是支付成功,狀態就是成功的,若是是失敗的,狀態就是失敗的,並把客戶的錢退回去,這樣雖然過程當中數據並非一致的,可是最終仍是一致的。又或者數據庫主從同步,主庫和同步,因爲網絡傳輸延時、網絡抖動、網絡故障等緣由,也可能在某個時間的數據是不一致的,可是最終也依然是一致的。