上市企業(yè)網站設計相似圖片在線查找
CAP定理
CAP定理,也稱為布魯爾定理(Brewer’s Theorem),是分布式系統(tǒng)設計中的一個基本原理。它指出在分布式系統(tǒng)中,一致性(Consistency)、可用性(Availability)和分區(qū)容忍性(Partition tolerance)三個要素中,任意時刻只能滿足其中的兩個。
圖文解釋
在分布式系統(tǒng)中,由于網絡分區(qū)(P)的存在,我們只能在一致性(C)和可用性(A)之間做出選擇。以下是CAP定理的圖解:
+-------+ vs +-------+| | | |
C ----| 一致性| | 可用性|---- A| | | |+-------+ vs +-------+
CP和AP對比:ZK和Eureka
ZK(ZooKeeper)- CP模型
ZooKeeper遵循CP原則,即在網絡分區(qū)發(fā)生時,為了保證一致性,可能會犧牲可用性。當ZooKeeper集群中的Master節(jié)點因為網絡問題與其他節(jié)點失去聯(lián)系時,會進行Leader選舉,期間整個集群可能不可用,直到選出新的Leader。
Eureka - AP模型
Eureka遵循AP原則,即在網絡分區(qū)發(fā)生時,為了保證可用性,可能會犧牲一致性。Eureka允許服務實例注冊信息在一段時間內是陳舊的,但仍然可以對外提供服務,即使某些實例可能已經下線。
BASE理論
BASE理論是對CAP理論中AP方案的一個補充,它強調基本可用(Basically Available)、軟狀態(tài)(Soft state)和最終一致性(Eventually consistent)。
圖文解釋
BASE理論的核心可以用以下圖表表示:
+----------------+ +----------------+ +----------------+| | | | | |
B ----| 基本可用(BA) | | 軟狀態(tài)(SS) | | 最終一致性(EC) || | | | | |+----------------+ +----------------+ +----------------+
在實際應用中,比如電商購物車系統(tǒng),用戶可以將商品添加到購物車,然后進行結算和支付。這涉及到對購物車中商品數(shù)量、價格等數(shù)據(jù)的操作和更新。為了確保數(shù)據(jù)的最終一致性,可以采取以下措施:在用戶操作后,通過異步消息隊列更新庫存和訂單信息,確保在系統(tǒng)出現(xiàn)故障時,數(shù)據(jù)最終能夠達到一致狀態(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