日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
為什么說(shuō),CAP是分布式理論的基礎(chǔ)?

為什么說(shuō),CAP是分布式理論的基礎(chǔ)?

作者:架構(gòu)師之路 2020-12-14 14:24:07


前端
分布式 分布式系統(tǒng)非常關(guān)注三個(gè)指標(biāo):數(shù)據(jù)一致性、系統(tǒng)可用性和節(jié)點(diǎn)連通性與擴(kuò)展性,這三個(gè)指標(biāo)的關(guān)系如何,今天來(lái)聊一聊分布式理論的基礎(chǔ)CAP。

憑借整站使用html5的創(chuàng)新體驗(yàn)、定制設(shè)計(jì)、設(shè)計(jì)團(tuán)隊(duì)積累與透明式的服務(wù)過(guò)程,符合行業(yè)特點(diǎn),專(zhuān)屬顧問(wèn)根據(jù)企業(yè)產(chǎn)品,消費(fèi)群體屬性,準(zhǔn)確定位;設(shè)計(jì)師以目標(biāo)客戶(hù)為中心,以突出品牌官網(wǎng)特性為宗旨,定制專(zhuān)屬網(wǎng)站建設(shè)設(shè)計(jì)方案。

分布式系統(tǒng)非常關(guān)注三個(gè)指標(biāo):

  • 數(shù)據(jù)一致性;
  • 系統(tǒng)可用性;
  • 節(jié)點(diǎn)連通性與擴(kuò)展性;

這三個(gè)指標(biāo)的關(guān)系如何,今天來(lái)聊一聊分布式理論的基礎(chǔ)CAP。

什么是數(shù)據(jù)一致性?

數(shù)據(jù)“強(qiáng)一致性”,是希望系統(tǒng)只讀到最新寫(xiě)入的數(shù)據(jù),例如:通過(guò)單點(diǎn)串行化的方式,就能夠達(dá)到這個(gè)效果。

關(guān)于session一致性,DB主從一致性,DB雙主一致性,DB與Cache一致性,數(shù)據(jù)冗余一致性,消息時(shí)序一致性,分布式事務(wù)一致性,庫(kù)存扣減一致性,都存在類(lèi)似的一致性問(wèn)題。

什么可用性?

如果系統(tǒng)每運(yùn)行100個(gè)時(shí)間單位,會(huì)有1個(gè)時(shí)間單位無(wú)法提供服務(wù),則說(shuō)系統(tǒng)的可用性是99%。

可用性和可靠性是比較容易搞混的兩個(gè)指標(biāo),以一臺(tái)取款機(jī)為例:

  • 正確的輸入,能夠取到正確的錢(qián),表示系統(tǒng)可靠;
  • 取款機(jī)7*24小時(shí)提供服務(wù),表示系統(tǒng)可用;

保證系統(tǒng)高可用的方法是:

  • 冗余;
  • 故障自動(dòng)轉(zhuǎn)移;

什么是連通性與擴(kuò)展性?

分布式系統(tǒng),往往有多個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)之間,都不是完全獨(dú)立的,需要相互通信,當(dāng)發(fā)生節(jié)點(diǎn)無(wú)法聯(lián)通時(shí),數(shù)據(jù)是否還能保持一致,系統(tǒng)要如何進(jìn)行容錯(cuò)處理,是需要考慮的。

同時(shí),連通性和擴(kuò)展性緊密相關(guān),想要加機(jī)器擴(kuò)展性能,必須有良好的連通性。當(dāng)一個(gè)節(jié)點(diǎn)脫離系統(tǒng),系統(tǒng)就出現(xiàn)問(wèn)題,往往意味著系統(tǒng)是無(wú)法擴(kuò)展的。

什么是CAP定理?

CAP定理,是對(duì)上述分布式系統(tǒng)的三個(gè)特性,進(jìn)行了歸納:

  • 一致性(Consistency);
  • 可用性(Availability);
  • 分區(qū)容忍性(Partition Tolerance);

并且,定理指出,在系統(tǒng)實(shí)現(xiàn)時(shí),這三者最多兼顧兩點(diǎn)。

一致性,可用性,多節(jié)點(diǎn)擴(kuò)展性三者只能取其二,既然加鎖已經(jīng)加上,常見(jiàn)的最佳工程架構(gòu)實(shí)踐是什么呢?

互聯(lián)網(wǎng),最常見(jiàn)的實(shí)踐是這樣的:

  • 節(jié)點(diǎn)連通性,多節(jié)點(diǎn)擴(kuò)展性,連通性異常的處理必須保證,滿(mǎn)足P;
  • 一致性C與可用性A一般二選一;
  • 選擇一致性C,舉例:傳統(tǒng)單庫(kù)水平切分,就是這類(lèi)選型的典型;
  • 選擇可用性A,舉例:雙主庫(kù)同步高可用,就是這類(lèi)選型的典型;

強(qiáng)一致很難怎么辦?

單點(diǎn)串行化,雖然能保證“強(qiáng)一致”,但對(duì)系統(tǒng)的并發(fā)性能,以及高可用有較大影響,互聯(lián)網(wǎng)的玩法,更多的是“最終一致性”,短期內(nèi)未必讀到最新的數(shù)據(jù),但在一個(gè)可接受的時(shí)間窗口之后,能夠讀到最新的數(shù)據(jù)。

例如:數(shù)據(jù)庫(kù)主從同步,從庫(kù)上的數(shù)據(jù),就是一個(gè)最終的一致。

總結(jié)

  • CAP可以理解為一致性,可用性,聯(lián)通與擴(kuò)展性;
  • CAP三者只能取其二;
  • 最常見(jiàn)的實(shí)踐是AP+最終一致性;

【本文為51CTO專(zhuān)欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】


網(wǎng)站欄目:為什么說(shuō),CAP是分布式理論的基礎(chǔ)?
分享網(wǎng)址:http://m.5511xx.com/article/dhcieii.html