背景
CAP理論又稱Brewer定理,是由Eric Brewer在2000年提出。Brewer認(rèn)為在分布式環(huán)境下,應(yīng)當(dāng)放棄對數(shù)據(jù)一致性,因為在分布式系統(tǒng)中數(shù)據(jù)完全一致性是做不到的;所以他提出在分布式環(huán)境下設(shè)計和部署系統(tǒng)是,有三個核心核心指標(biāo)以一種特殊的關(guān)系存在:Consistency,Availability,Partition tolerance,簡稱CAP.
理論
CAP定理:在一個分布式系統(tǒng)中,Consistency(一致性)、Availability(可用性)、Partition tolerance(分區(qū)容錯性)三者不可兼得。
一致性:所有節(jié)點訪問同一份最新的數(shù)據(jù)副本
? ? ? ? ? ? ?強(qiáng)一致指數(shù)據(jù)副本跟新后,對集群內(nèi)所有節(jié)點都是立即可見
? ? ? ? ? ? ?最終一致指舒服副本數(shù)據(jù)跟新后,并不是多所有的節(jié)點都可以,但經(jīng)過有限的時間,最終會對所有的節(jié)點可見。
可用性:集群中部分節(jié)點故障后,集群整體是否還能正常響應(yīng)客戶端的請求。
分區(qū)容錯:集群內(nèi)有部分消息丟失,系統(tǒng)扔能提供服務(wù)。