CAP理論:一個(gè)分布式系統(tǒng)不可能同時(shí)滿足一致性(Consistency),可用性(Availability)和分區(qū)容錯(cuò)性(Parttion tolerance)最多只能滿足兩個(gè)。分布式系統(tǒng)首先要保證分區(qū)容錯(cuò)性,需要在一致性和可用性的權(quán)衡。
一致性:分布式系統(tǒng)中多個(gè)副本見數(shù)據(jù)的一致性
可用性:在有限時(shí)間內(nèi),返回結(jié)果
分區(qū)容錯(cuò)性:分布式系統(tǒng)在遇到任何網(wǎng)絡(luò)分區(qū)故障的時(shí)候,都可以保障一致性和可用性服務(wù)。
BASE理論:Basically Available(基本可用),Soft state(軟狀態(tài)),Eventually consistent(最終一致性)
基本可用:在遇到故障時(shí),損失部分可用性(響應(yīng)時(shí)間的損失,功能上的損失)
軟狀態(tài):允許系統(tǒng)中的數(shù)據(jù)存在中間狀態(tài),該中間狀態(tài)的存在不會影響系統(tǒng)的整體可用性,即允許系統(tǒng)在不同節(jié)點(diǎn)的數(shù)據(jù)副本之間進(jìn)行數(shù)據(jù)同步的過程存在延時(shí)。
最終一致性:數(shù)據(jù)副本在經(jīng)過一段時(shí)間同步后,最終能夠達(dá)到一個(gè)一致性的狀態(tài)。