一、BASE理論
eBay的架構(gòu)師Dan Pritchett源于對(duì)大規(guī)模分布式系統(tǒng)的實(shí)踐總結(jié),在ACM上發(fā)表文章提出BASE理論,BASE理論是對(duì)CAP理論的延伸,核心思想是即使無(wú)法做到強(qiáng)一致性(Strong Consistency,CAP的一致性就是強(qiáng)一致性),但應(yīng)用可以采用適合的方式達(dá)到最終一致性(Eventual Consitency)。
BASE是指基本可用(Basically Available)、軟狀態(tài)( Soft State)、最終一致性( Eventual Consistency)。
二、基本可用(Basically Available)
基本可用是指分布式系統(tǒng)在出現(xiàn)故障的時(shí)候,允許損失部分可用性,即保證核心可用。
電商大促時(shí),為了應(yīng)對(duì)訪問(wèn)量激增,部分用戶(hù)可能會(huì)被引導(dǎo)到降級(jí)頁(yè)面,服務(wù)層也可能只提供降級(jí)服務(wù)。這就是損失部分可用性的體現(xiàn)。
三、軟狀態(tài)( Soft State)
軟狀態(tài)是指允許系統(tǒng)存在中間狀態(tài),而該中間狀態(tài)不會(huì)影響系統(tǒng)整體可用性。分布式存儲(chǔ)中一般一份數(shù)據(jù)至少會(huì)有三個(gè)副本,允許不同節(jié)點(diǎn)間副本同步的延時(shí)就是軟狀態(tài)的體現(xiàn)。mysql replication的異步復(fù)制也是一種體現(xiàn)。
四、最終一致性( Eventual Consistency)
最終一致性是指系統(tǒng)中的所有數(shù)據(jù)副本經(jīng)過(guò)一定時(shí)間后,最終能夠達(dá)到一致的狀態(tài)。弱一致性和強(qiáng)一致性相反,最終一致性是弱一致性的一種特殊情況。
轉(zhuǎn)載