Consistency(一致性), Availability (可用性), Partition Tolerance(分區容忍性) 組成 CAP 定理,在前一文中提到依據不同的狀況下我們必須面臨取捨的問題,藉由了解三者的定義與任取其二所產生出來的效果了解該如何取捨。
all nodes see the same data at the same time
在同一時間點任意取兩個節點資料是一致的
Reads and writes always succeed
服務每次都可以在合理的時間內被存取
the system continues to operate despite arbitrary message loss or failure of part of the system
在節點間網路連結錯誤或中斷時,不影響整體系統運作
普遍認為最無法被捨去的便是 Partition Tolerance,簡單的說便是確保我們的服務是永遠活著的,即便系統部分節點死亡或無法連接,也可以由其他節點滿足服務需求,在現實的商務活動中這一塊是最需要被確保的。
我們基於 Partition Tolerance 無法被捨棄的前提下來點單分析一下 CP 與 AP。
基於上述效果可以看出
以實作面來看待恰似利用 redis(noSQL) 來做快取,mySQL(RDBMS)來做最終資料儲存。