分布式事務(wù)

CAP的含義:

C:Consistency 一致性

同一數(shù)據(jù)的多個(gè)副本是否實(shí)時(shí)相同。

A:Availability 可用性

可用性:一定時(shí)間內(nèi) & 系統(tǒng)返回一個(gè)明確的結(jié)果 則稱為該系統(tǒng)可用窥岩。

P:Partition tolerance 分區(qū)容錯(cuò)性

將同一服務(wù)分布在多個(gè)系統(tǒng)中棵帽,從而保證某一個(gè)系統(tǒng)宕機(jī)笙以,仍然有其他系統(tǒng)提供相同的服務(wù)。

CAP理論告訴我們,在分布式系統(tǒng)中揍诽,C愉适、A犯助、P三個(gè)條件中我們最多只能選擇兩個(gè)。那么問題來了维咸,究竟選擇哪兩個(gè)條件較為合適呢剂买?

對(duì)于一個(gè)業(yè)務(wù)系統(tǒng)來說惠爽,可用性和分區(qū)容錯(cuò)性是必須要滿足的兩個(gè)條件,并且這兩者是相輔相成的瞬哼。業(yè)務(wù)系統(tǒng)之所以使用分布式系統(tǒng)婚肆,主要原因有兩個(gè):

提升整體性能

當(dāng)業(yè)務(wù)量猛增,單個(gè)服務(wù)器已經(jīng)無法滿足我們的業(yè)務(wù)需求的時(shí)候坐慰,就需要使用分布式系統(tǒng)旬痹,使用多個(gè)節(jié)點(diǎn)提供相同的功能,從而整體上提升系統(tǒng)的性能讨越,這就是使用分布式系統(tǒng)的第一個(gè)原因两残。

實(shí)現(xiàn)分區(qū)容錯(cuò)性

單一節(jié)點(diǎn) 或 多個(gè)節(jié)點(diǎn)處于相同的網(wǎng)絡(luò)環(huán)境下,那么會(huì)存在一定的風(fēng)險(xiǎn)把跨,萬一該機(jī)房斷電人弓、該地區(qū)發(fā)生自然災(zāi)害,那么業(yè)務(wù)系統(tǒng)就全面癱瘓了着逐。為了防止這一問題崔赌,采用分布式系統(tǒng),將多個(gè)子系統(tǒng)分布在不同的地域耸别、不同的機(jī)房中健芭,從而保證系統(tǒng)高可用性。

這說明分區(qū)容錯(cuò)性是分布式系統(tǒng)的根本秀姐,如果分區(qū)容錯(cuò)性不能滿足慈迈,那使用分布式系統(tǒng)將失去意義。

此外省有,可用性對(duì)業(yè)務(wù)系統(tǒng)也尤為重要痒留。在大談?dòng)脩趔w驗(yàn)的今天,如果業(yè)務(wù)系統(tǒng)時(shí)常出現(xiàn)“系統(tǒng)異炒姥兀”伸头、響應(yīng)時(shí)間過長等情況,這使得用戶對(duì)系統(tǒng)的好感度大打折扣舷蟀,在互聯(lián)網(wǎng)行業(yè)競(jìng)爭(zhēng)激烈的今天恤磷,相同領(lǐng)域的競(jìng)爭(zhēng)者不甚枚舉,系統(tǒng)的間歇性不可用會(huì)立馬導(dǎo)致用戶流向競(jìng)爭(zhēng)對(duì)手野宜。因此扫步,我們只能通過犧牲一致性來換取系統(tǒng)的可用性和分區(qū)容錯(cuò)性。這也就是下面要介紹的BASE理論速缨。

CAP理論告訴我們一個(gè)悲慘但不得不接受的事實(shí)——我們只能在C锌妻、A、P中選擇兩個(gè)條件旬牲。而對(duì)于業(yè)務(wù)系統(tǒng)而言仿粹,我們往往選擇犧牲一致性來換取系統(tǒng)的可用性和分區(qū)容錯(cuò)性搁吓。不過這里要指出的是,所謂的“犧牲一致性”并不是完全放棄數(shù)據(jù)一致性吭历,而是犧牲強(qiáng)一致性換取弱一致性堕仔。下面來介紹下BASE理論。

BA:Basic Available 基本可用

整個(gè)系統(tǒng)在某些不可抗力的情況下晌区,仍然能夠保證“可用性”摩骨,即一定時(shí)間內(nèi)仍然能夠返回一個(gè)明確的結(jié)果。只不過“基本可用”和“高可用”的區(qū)別是:

“一定時(shí)間”可以適當(dāng)延長

當(dāng)舉行大促時(shí)朗若,響應(yīng)時(shí)間可以適當(dāng)延長

給部分用戶返回一個(gè)降級(jí)頁面

給部分用戶直接返回一個(gè)降級(jí)頁面恼五,從而緩解服務(wù)器壓力。但要注意哭懈,返回降級(jí)頁面仍然是返回明確結(jié)果灾馒。

S:Soft State:柔性狀態(tài)

同一數(shù)據(jù)的不同副本的狀態(tài),可以不需要實(shí)時(shí)一致遣总。

E:Eventual Consisstency:最終一致性

同一數(shù)據(jù)的不同副本的狀態(tài)睬罗,可以不需要實(shí)時(shí)一致,但一定要保證經(jīng)過一定時(shí)間后仍然是一致的旭斥。

酸堿平衡

ACID能夠保證事務(wù)的強(qiáng)一致性容达,即數(shù)據(jù)是實(shí)時(shí)一致的。這在本地事務(wù)中是沒有問題的垂券,在分布式事務(wù)中花盐,強(qiáng)一致性會(huì)極大影響分布式系統(tǒng)的性能,因此分布式系統(tǒng)中遵循BASE理論即可圆米。但分布式系統(tǒng)的不同業(yè)務(wù)場(chǎng)景對(duì)一致性的要求也不同卒暂。如交易場(chǎng)景下啄栓,就要求強(qiáng)一致性娄帖,此時(shí)就需要遵循ACID理論,而在注冊(cè)成功后發(fā)送短信驗(yàn)證碼等場(chǎng)景下昙楚,并不需要實(shí)時(shí)一致近速,因此遵循BASE理論即可。因此要根據(jù)具體業(yè)務(wù)場(chǎng)景堪旧,在ACID和BASE之間尋求平衡削葱。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市淳梦,隨后出現(xiàn)的幾起案子析砸,更是在濱河造成了極大的恐慌,老刑警劉巖爆袍,帶你破解...
    沈念sama閱讀 216,324評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件首繁,死亡現(xiàn)場(chǎng)離奇詭異作郭,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)弦疮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門夹攒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人胁塞,你說我怎么就攤上這事咏尝。” “怎么了啸罢?”我有些...
    開封第一講書人閱讀 162,328評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵编检,是天一觀的道長。 經(jīng)常有香客問我扰才,道長蒙谓,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,147評(píng)論 1 292
  • 正文 為了忘掉前任训桶,我火速辦了婚禮累驮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘舵揭。我一直安慰自己谤专,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評(píng)論 6 388
  • 文/花漫 我一把揭開白布午绳。 她就那樣靜靜地躺著置侍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拦焚。 梳的紋絲不亂的頭發(fā)上蜡坊,一...
    開封第一講書人閱讀 51,115評(píng)論 1 296
  • 那天,我揣著相機(jī)與錄音赎败,去河邊找鬼秕衙。 笑死,一個(gè)胖子當(dāng)著我的面吹牛僵刮,可吹牛的內(nèi)容都是我干的据忘。 我是一名探鬼主播,決...
    沈念sama閱讀 40,025評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼搞糕,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼勇吊!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起窍仰,我...
    開封第一講書人閱讀 38,867評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤汉规,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后驹吮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體针史,經(jīng)...
    沈念sama閱讀 45,307評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡膏燕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悟民。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片坝辫。...
    茶點(diǎn)故事閱讀 39,688評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖射亏,靈堂內(nèi)的尸體忽然破棺而出近忙,到底是詐尸還是另有隱情,我是刑警寧澤智润,帶...
    沈念sama閱讀 35,409評(píng)論 5 343
  • 正文 年R本政府宣布及舍,位于F島的核電站,受9級(jí)特大地震影響窟绷,放射性物質(zhì)發(fā)生泄漏锯玛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評(píng)論 3 325
  • 文/蒙蒙 一兼蜈、第九天 我趴在偏房一處隱蔽的房頂上張望攘残。 院中可真熱鬧,春花似錦为狸、人聲如沸歼郭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽病曾。三九已至,卻和暖如春漾根,著一層夾襖步出監(jiān)牢的瞬間泰涂,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評(píng)論 1 268
  • 我被黑心中介騙來泰國打工辐怕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留逼蒙,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,685評(píng)論 2 368
  • 正文 我出身青樓秘蛇,卻偏偏與公主長得像其做,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子赁还,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 1 背景 一致性是一個(gè)抽象的、具有多重含義的計(jì)算機(jī)術(shù)語驹沿,在不同應(yīng)用場(chǎng)景下艘策,有不同的定義和含義。在傳統(tǒng)的IT時(shí)代渊季,一...
    新強(qiáng)吖閱讀 453評(píng)論 0 2
  • 1朋蔫、事務(wù)簡(jiǎn)介 ? 事務(wù)(Transaction)是訪問并可能更新數(shù)據(jù)庫中各種數(shù)據(jù)項(xiàng)的一個(gè)程序執(zhí)行單元(u...
    逗逼程序員閱讀 679評(píng)論 0 1
  • 不知道你是否遇到過這樣的情況罚渐,去小賣鋪買東西,付了錢驯妄,但是店主因?yàn)樘幚砹艘恍┢渌潞刹ⅲ尤煌浤愀读隋X,又叫你重新付...
    高級(jí)java架構(gòu)師閱讀 1,352評(píng)論 0 1
  • 再有人問你分布式事務(wù)青扔,把這篇扔給他 咖啡拿鐵純潔的微笑今天 前言 不知道你是否遇到過這樣的情況源织,去小賣鋪買東西,付...
    冬_2bf6閱讀 609評(píng)論 0 0
  • 年輕人這輩子光宗耀祖是最后的宿命?文/李小程 在他人前光鮮凛剥,人后狼狽侠仇,難道真能保留一絲尊嚴(yán)?作為一個(gè)男生犁珠,能不能逻炊,...
    不是李小程閱讀 1,228評(píng)論 0 1