上市企業(yè)網(wǎng)站設(shè)計(jì)相似圖片在線查找
CAP定理
CAP定理,也稱(chēng)為布魯爾定理(Brewer’s Theorem),是分布式系統(tǒng)設(shè)計(jì)中的一個(gè)基本原理。它指出在分布式系統(tǒng)中,一致性(Consistency)、可用性(Availability)和分區(qū)容忍性(Partition tolerance)三個(gè)要素中,任意時(shí)刻只能滿(mǎn)足其中的兩個(gè)。
圖文解釋
在分布式系統(tǒng)中,由于網(wǎng)絡(luò)分區(qū)(P)的存在,我們只能在一致性(C)和可用性(A)之間做出選擇。以下是CAP定理的圖解:
+-------+ vs +-------+| | | |
C ----| 一致性| | 可用性|---- A| | | |+-------+ vs +-------+
CP和AP對(duì)比:ZK和Eureka
ZK(ZooKeeper)- CP模型
ZooKeeper遵循CP原則,即在網(wǎng)絡(luò)分區(qū)發(fā)生時(shí),為了保證一致性,可能會(huì)犧牲可用性。當(dāng)ZooKeeper集群中的Master節(jié)點(diǎn)因?yàn)榫W(wǎng)絡(luò)問(wèn)題與其他節(jié)點(diǎn)失去聯(lián)系時(shí),會(huì)進(jìn)行Leader選舉,期間整個(gè)集群可能不可用,直到選出新的Leader。
Eureka - AP模型
Eureka遵循AP原則,即在網(wǎng)絡(luò)分區(qū)發(fā)生時(shí),為了保證可用性,可能會(huì)犧牲一致性。Eureka允許服務(wù)實(shí)例注冊(cè)信息在一段時(shí)間內(nèi)是陳舊的,但仍然可以對(duì)外提供服務(wù),即使某些實(shí)例可能已經(jīng)下線。
BASE理論
BASE理論是對(duì)CAP理論中AP方案的一個(gè)補(bǔ)充,它強(qiáng)調(diào)基本可用(Basically Available)、軟狀態(tài)(Soft state)和最終一致性(Eventually consistent)。
圖文解釋
BASE理論的核心可以用以下圖表表示:
+----------------+ +----------------+ +----------------+| | | | | |
B ----| 基本可用(BA) | | 軟狀態(tài)(SS) | | 最終一致性(EC) || | | | | |+----------------+ +----------------+ +----------------+
在實(shí)際應(yīng)用中,比如電商購(gòu)物車(chē)系統(tǒng),用戶(hù)可以將商品添加到購(gòu)物車(chē),然后進(jìn)行結(jié)算和支付。這涉及到對(duì)購(gòu)物車(chē)中商品數(shù)量、價(jià)格等數(shù)據(jù)的操作和更新。為了確保數(shù)據(jù)的最終一致性,可以采取以下措施:在用戶(hù)操作后,通過(guò)異步消息隊(duì)列更新庫(kù)存和訂單信息,確保在系統(tǒng)出現(xiàn)故障時(shí),數(shù)據(jù)最終能夠達(dá)到一致?tīng)顟B(tài)。
下面是springboot,springCloudalibaba等視頻地址
<!-- springboot,springboot整合redis,整合rocketmq視頻: -->
https://www.bilibili.com/video/BV1nkmRYSErk/?vd_source=14d27ec13a4737c281b7c79463687112<!-- springcloudalibaba,openfeign,nacos,gateway,sso視頻:-->
https://www.bilibili.com/video/BV1cFDEYWEkY/?vd_source=14d27ec13a4737c281b7c79463687112<!-- vue+springboot前后端分離視頻:-->
https://www.bilibili.com/video/BV1JLSEYJETc/?vd_source=14d27ec13a4737c281b7c79463687112<!-- shiro視頻:-->
https://www.bilibili.com/video/BV1YVUmYJEPi/?vd_source=14d27ec13a4737c281b7c79463687112