CAP theorem
CAP
- 網路分區容錯(Tolerance towards Network Partition)
- 一致性(Consistency)
- 可用性(Availability)
三項最多取兩項 (實務上並非全有全無,而是傾向)
CA without P: 系統在網絡分區的情況下,存在未定義的行為。 AP without C: 不保證數據一致性。(使用樂觀鎖,並處理不一致所造成的conflict) CP without A: 數據只能在保證一致性的情況下才能被使用。(使用悲觀鎖等待所有節點一致)
近似(但仍可以在不同層級交疊使用)
CA: replica (一份資料複製多份放在各個節點)
- 在網路分區的情況下,各節點仍然可用,但一致性是未定義的) CP: sharding (特定資料只放在特定節點)
- 節點壞掉時部分資料不可用 AP: 綜合