1. 程式人生 > >分散式系統中的CAP理論與BASE理論

分散式系統中的CAP理論與BASE理論

1、CAP理論:
    
    Consistency(一致性)、 Availability(可用性)、Partition tolerance(分割槽容錯性)

    分散式系統中的三個特性:
    一致性(C):在分散式系統中的所有資料備份,在同一時刻是否同樣的值。(等同於所有節點訪問同一份最新的資料副本)
    可用性(A):在叢集中一部分節點故障後,叢集整體是否還能響應客戶端的讀寫請求。(對資料更新具備高可用性)
    分割槽容忍性(P):以實際效果而言,分割槽相當於對通訊的時限要求。系統如果不能在時限內達成資料一致性,就意味著發生了分割槽的情況,必須就當前操作在C和A之間做出選擇。
    一致性與可用性的決擇編輯
    CAP理論就是說在分散式儲存系統中,最多隻能實現上面的兩點。而由於當前的網路硬體肯定會出現延遲丟包等問題,所以分割槽容忍性是我們必須需要實現的。所以我們只能在一致性和可用性之間進行權衡

2、BASE理論:
    
    Basically Available(基本可用)、Soft state(軟狀態)和Eventually consistent(最終一致性)
    
    BASE是對CAP中一致性和可用性權衡的結果,其來源於對大規模網際網路系統分散式實踐的結論,是基於CAP定理逐步演化而來的,其核心思想是即使無法做到強一致性(Strong consistency),但每個應用都可以根據自身的業務特點,採用適當的方式來使系統達到最終一致性(Eventual consistency)

參考:
https://www.cnblogs.com/duanxz/p/5229352.html 《CAP原則(CAP定理)、BASE理論》
https://blog.csdn.net/lihao21/article/details/81051631 《CAP 理論 —— 最通俗的解釋》