日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cap理论具体含义_架构设计之「 CAP 定理 」

發布時間:2023/12/3 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cap理论具体含义_架构设计之「 CAP 定理 」 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在計算機領域,如果是初入行就算了,如果是多年的老碼農還不懂 CAP 定理,那就真的說不過去了。CAP可是每一名技術架構師都必須掌握的基礎原則啊。
現在只要是稍微大一點的互聯網項目都是采用 分布式 結構了,一個系統可能有多個節點組成,每個節點都可能需要維護一份數據。那么如何維護各個節點之間的狀態,如何保障各個節點之間數據的同步問題就是大家急需關注的事情了。
CAP定理是分布式系統中最基礎的原則。所以理解和掌握了CAP,對系統架構的設計至關重要。

一、什么是 CAP?
「 CAP定理 」又被稱為 布魯爾定理,它提出對于一個分布式系統而言,不能同時滿足以下三點:

  • Consisteny(一致性)
  • Availability(可用性)
  • Partition tolerance(分區容錯性)

也就是說CAP定理指明了,任何分布式系統只能同時滿足這三項中的兩項。

如上圖,如果是最多同時滿足兩項,那我們可以有三個組合:CA、CP、AP。在聊這三個組合之前,我們先分別看一下 Consisteny(一致性)、Availability(可用性)、Partition tolerance(分區容錯性)的含義。
假設某個系統當前有兩個節點A和B,兩個節點分別可以由Actor進行讀寫,兩個節點之間的數據會自動完成同步。

  • Consisteny(一致性)
    一致性的要求是指,對于任何客戶端(上圖Actor)來說,每次的讀操作,都能獲得最新的數據。即,當有客戶端向A節點寫入了新數據之后,其它客戶端從B節點中進行讀操作所獲得的數據必須也是最新的,是與A節點數據保持一致的。
  • Availability(可用性)
    可用性的要求是指,每個請求都能在合理的時間內獲得符合預期的響應(不保證獲取的結果是最新的數據)。
    按照上圖來看就是,客戶端只要向A節點或B節點發起請求后,只要這兩個節點收到了請求,就必須響應給客戶端,但不需要保證響應的值是否正確。
  • Partition tolerance(分區容錯性)
    分區容錯性是指,當節點之間的網絡出現問題之后,系統依然能正常提供服務。
  • 講完了C、A、P的含義和要求,我們繼續來看看它們之間如何組合使用。二、CAP 怎么應用?
    先把視野回到這張圖上:

    雖然我們知道有 CA、CP、AP 三種組合方式,但是在分布式系統的結構下,網絡是不可能做到100%可靠的。既然網絡不能保證絕對可靠,那 P(分區容錯性)就是一個必選項了。原因如下:
    如果選擇 CA組合,放棄 P(分區容錯性)。還是以最上面的圖中A和B節點來舉例,當發生節點間網絡故障時,為了保證 C(一致性),那么就必須將系統鎖住,不允許任何寫入操作,否者就會出現節點之間數據不一致了。但是鎖住了系統,就意味著當有寫請求進來的時候,系統是不可用的,這一點又違背了 A(可用性)原則。
    因此分布式系統理論上是不可能有CA組合的,所以我們只能選擇 CP 和 AP組合架構。
    下面我們來詳細看一下 CP架構 和 AP架構的特點:

  • CP 架構
    CP架構即 Consisteny(一致性)與 Partition tolerance(分區容錯性)的組合。

  • 如上圖,由于網絡問題,節點A和節點B之前不能互相通訊。當有客戶端(上圖Actor)向節點A進行寫入請求時(準備寫入Message 2),節點A會不接收寫入操作,導致寫入失敗,這樣就保證了節點A和節點B的數據一致性,即保證了Consisteny(一致性)。
    然后,如果有另一個客戶端(上圖另一個Actor)向B節點進行讀請求的時候,B請求返回的是網絡故障之前所保存的信息(Message 1),并且這個信息是與節點A一致的,是整個系統最后一次成功寫入的信息,是能正常提供服務的,即保證了Partition tolerance(分區容錯性)。
    上述情況就是保障了CP架構,但放棄了Availability(可用性)的方案。

  • AP 架構
    AP架構即 Availability(可用性)與 Partition tolerance(分區容錯性)的組合架構。

  • 如上圖,由于網絡問題,節點A和節點B之前不能互相通訊。當有客戶端(上圖Actor)向節點A進行寫入請求時(準備寫入Message 2),節點A允許寫入,請求操作成功。但此時,由于A和B節點之前無法通訊,所以B節點的數據還是舊的(Message 1)。當有客戶端向B節點發起讀請求時候,讀到的數據是舊數據,與在A節點讀到的數據不一致。但由于系統能照常提供服務,所以滿足了Availability(可用性)要求。
    因此,這種情況下,就是保障了AP架構,但其放棄了 Consisteny(一致性)。

    三、CAP 注意事項?
    了解了CAP定理后,對于開發者而言,當我們構建服務的時候,就需要根據業務特性作出權衡考慮,哪些點是當前系統可以取舍的,哪些是應該重點保障的。
    即使是在同一個系統中,不同模塊的數據可能應用的CAP架構都是不同的。舉個例子,在某個電商系統中,屬于用戶模塊的數據(賬密、錢包余額等)對一致性的要求很高,就可以采用CP架構。而對于一些商品信息方面的數據對一致性要求沒那么高,但為了照顧用戶體驗,所以對可用性要求更高一些,那么這個模塊的數據就可以采用AP架構。
    另外,雖然上面第二節講到過我們只能選擇CP和AP,無法選擇CA。但這句話成立的前提條件是在系統發生了網絡故障的情況下。然而,網絡故障的概率在系統的整個生命周期中占比是很小的,因此我們在設計的時候,雖然要考慮網絡問題下的方案,但也要考慮網絡正常情況下的方案,即在網絡正常情況下,CA是可以實現的,我們也需要去保證在絕大多數時間下的CA架構。
    再者,即使我們按照CAP定理,三個中只能取其二,但不代表我們只需要保障其中的兩點,而完全的放棄第三點,我們應該為不能保障的第三點也做一些防備措施或者冗余方案,來使系統更加的完善健全。


    以上,就是對CAP定理的一些思考。


    本文原創發布于微信公眾號「 不止思考 」,歡迎關注,一起提升 認知、工作成長、大數據、架構、Web等技術。

    碼字不易啊,喜歡的話各位看官不妨轉發朋友吧。

    總結

    以上是生活随笔為你收集整理的cap理论具体含义_架构设计之「 CAP 定理 」的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 在线看一区二区 | 亚洲视频在线观看 | 扒开美女内裤狂揉下部 | 99人人爽 | 日本特黄 | 亚洲自偷自偷偷色无码中文 | 激情福利网 | 91精东传媒理伦片在线观看 | 日韩免费视频一区二区 | 免费黄色网址在线 | 中文字幕 欧美 日韩 | 国产一区二区麻豆 | 黑人巨大精品欧美黑寡妇 | 亚洲中文字幕无码不卡电影 | 国产乱淫精品一区二区三区毛片 | 人人妻人人澡人人爽精品 | 精品无码一区二区三区免费 | 免费看成人毛片 | 五月婷在线 | 日本高清视频在线观看 | 黄色理伦| 另类欧美尿交 | 男男在线观看 | 四虎影视永久免费 | 污视频在线网站 | 四川丰满妇女毛片四川话 | 中文字幕国产亚洲 | 精品免费囯产一区二区三区 | 欧美性xxxxx极品娇小 | 亚洲精品视频在线观看免费视频 | 一区二区三区四区在线免费观看 | 高清一区在线观看 | 亚洲AV无码一区二区三区性 | 中国国产毛片 | 亚洲免费av网址 | 国产精品对白 | 国产情侣酒店自拍 | 国产微拍一区 | 午夜看片福利 | 伊人久久久久久久久 | 色天天 | 亚洲欧美视频在线播放 | 99久久久国产精品免费蜜臀 | 国产在线观看免费av | 另类专区亚洲 | 亚洲一区二区三区精品视频 | 日韩成人午夜影院 | 全黄性性激高免费视频 | 无码人妻精品一区二区三区在线 | 性毛片| www色视频 | 波多野结衣绝顶大高潮 | 夜夜春视频 | 午夜视频观看 | 我看黄色一级片 | 色天堂影院 | av在线网址大全 | 久久黑人| 亚洲www久久久 | 成人免费视频a | 色九九 | 日日噜噜夜夜狠狠久久丁香五月 | 青青草社区 | 亚洲乱码中文字幕 | 日本成人动漫在线观看 | 青青草毛片| 成人a在线 | 久久久久亚洲av成人片 | 中文字幕亚洲乱码 | 特黄大片又粗又大又暴 | 短裙公车被强好爽h吃奶视频 | 国产精品8 | 亚洲天堂五码 | 欧美又粗又深又猛又爽啪啪九色 | 欧美在线va | 美女脱了内裤喂我喝尿视频 | 大又大粗又爽又黄少妇毛片 | 鲁鲁在线 | 99自拍视频 | 亚洲精品色午夜无码专区日韩 | 欧美成人性生活 | 日韩骚片 | 少妇高潮网站 | 看av网站 | 久久久久久日产精品 | 亚洲青青草原 | 91av福利视频 | 日韩精品高清在线观看 | 调教丰满的已婚少妇在线观看 | 黄色图片小说 | 国产美女又黄又爽又色视频免费 | 日韩一区二区三区在线视频 | 91在线视频精品 | 我要看免费毛片 | 天天碰天天干 | 人妻丰满熟妇av无码区免 | 国产私拍视频 | 日韩免费黄色 | 国产拍拍拍拍拍拍拍拍拍拍拍拍拍 |