一、分布式事務(wù)的應(yīng)用場景

現(xiàn)在提起分布式事務(wù)中的“事務(wù)”迫皱,和傳統(tǒng)的數(shù)據(jù)庫事務(wù)中的“事務(wù)”嚴(yán)格意義上已經(jīng)不是完全等同的了歉闰。

設(shè)計一個分布式事務(wù)框架前,首先要明確問題到定義舍杜。

分析具體應(yīng)用場景,包括以下三個:A赵辕、服務(wù)內(nèi)跨數(shù)據(jù)庫的事務(wù)既绩;B、跨內(nèi)部服務(wù)的事務(wù)还惠;C饲握、跨外部服務(wù)的事務(wù)。

其中劃分內(nèi)部和外部的標(biāo)準(zhǔn)是:內(nèi)部服務(wù)我們可以控制其實現(xiàn)蚕键,修改配置或代碼救欧;外部服務(wù)指的是第三方的,只能約定通信的方式和具體協(xié)議锣光,具體代碼實現(xiàn)在控制范圍之外笆怠。

具體如下:

應(yīng)用場景A:服務(wù)內(nèi)跨數(shù)據(jù)庫

如下圖所示,在同一個服務(wù)方法內(nèi)誊爹,訪問兩個或兩個以上數(shù)據(jù)庫蹬刷。

我們知道,Java事務(wù)是通過Connection對象控制的频丘。不同的數(shù)據(jù)庫办成,是不同的數(shù)據(jù)庫鏈接,通過不同的Connection對象實現(xiàn)搂漠。傳統(tǒng)數(shù)據(jù)庫事務(wù)無法實現(xiàn)事務(wù)控制盯另,需要引入事務(wù)協(xié)調(diào)者的概念晶府。這是場景A,這個場景中分布式體現(xiàn)在數(shù)據(jù)庫的部署上。

應(yīng)用場景B:跨內(nèi)部服務(wù)

如下圖所示格郁,一個服務(wù)通過微服務(wù)框架或者RPC調(diào)用調(diào)用其他的服務(wù),多個子服務(wù)需要同時成功或失敗狈究。每個子服務(wù)都有自己的持久化方式煤裙,不一定是數(shù)據(jù)庫,體現(xiàn)事務(wù)的持久性馆截。每個子服務(wù)部署在不同的服務(wù)容器中充活,不同的服務(wù)容器部署在不同的服務(wù)器節(jié)點上蜂莉。這是場景B,這個場景中分布式體現(xiàn)在服務(wù)(或應(yīng)用)的部署上混卵。

這時候映穗,事務(wù)的概念已經(jīng)超出“數(shù)據(jù)庫”的范疇了。

應(yīng)用場景C:跨外部服務(wù)

這個場景是在應(yīng)用場景B的基礎(chǔ)上幕随,進一步蚁滋,服務(wù)的具體實現(xiàn)在我們控制范圍之外。我們不能限制其實現(xiàn)語言赘淮,不能要求指定方法上加標(biāo)注(注解)辕录。甚至除了服務(wù)調(diào)用的網(wǎng)絡(luò)通道外,我們不能期望服務(wù)間訪問相同的Zookeeper作為事務(wù)協(xié)調(diào)器梢卸。這是場景C走诞,這個場景中,我們只能在通信協(xié)議層面做約定蛤高,是最徹底的分布式場景蚣旱。

小結(jié)

以上分析了分布式事務(wù)的三個應(yīng)用場景,具體的技術(shù)方案也針對這三個場景做設(shè)計戴陡。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末塞绿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子恤批,更是在濱河造成了極大的恐慌异吻,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喜庞,死亡現(xiàn)場離奇詭異涧黄,居然都是意外死亡,警方通過查閱死者的電腦和手機赋荆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門笋妥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人窄潭,你說我怎么就攤上這事春宣。” “怎么了嫉你?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵月帝,是天一觀的道長。 經(jīng)常有香客問我幽污,道長嚷辅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任距误,我火速辦了婚禮簸搞,結(jié)果婚禮上扁位,老公的妹妹穿的比我還像新娘。我一直安慰自己趁俊,他們只是感情好域仇,可當(dāng)我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著寺擂,像睡著了一般暇务。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上怔软,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天垦细,我揣著相機與錄音,去河邊找鬼挡逼。 笑死括改,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的挚瘟。 我是一名探鬼主播叹谁,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼饲梭,長吁一口氣:“原來是場噩夢啊……” “哼乘盖!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起憔涉,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤订框,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后兜叨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體穿扳,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年国旷,在試婚紗的時候發(fā)現(xiàn)自己被綠了矛物。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡跪但,死狀恐怖履羞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情屡久,我是刑警寧澤忆首,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站被环,受9級特大地震影響糙及,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜筛欢,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一浸锨、第九天 我趴在偏房一處隱蔽的房頂上張望唇聘。 院中可真熱鬧,春花似錦揣钦、人聲如沸雳灾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谎亩。三九已至,卻和暖如春宇姚,著一層夾襖步出監(jiān)牢的瞬間匈庭,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工浑劳, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留阱持,地道東北人。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓魔熏,卻偏偏與公主長得像衷咽,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蒜绽,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,573評論 2 359

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

  • //我所經(jīng)歷的大數(shù)據(jù)平臺發(fā)展史(三):互聯(lián)網(wǎng)時代 ? 上篇http://www.infoq.com/cn/arti...
    葡萄喃喃囈語閱讀 51,236評論 10 200
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理镶骗,服務(wù)發(fā)現(xiàn),斷路器躲雅,智...
    卡卡羅2017閱讀 134,702評論 18 139
  • 從網(wǎng)上買回來了個柜子鼎姊,要自己安裝,我特別相信自己能把它安裝好相赁,自己動手相寇,豐衣足食吧!所以開始不其厭煩的安裝钮科,每安裝...
    綠塬閱讀 203評論 0 0
  • 沒錢了唤衫,沒錢了,我感到十分的沒有安全感绵脯。 由于家庭狀況發(fā)生了改變佳励,老公的生意關(guān)門了,對于一直依靠老公的我來說內(nèi)心是...
    Sunny萍閱讀 152評論 0 1
  • 孩子進入了青春期后桨嫁,父母發(fā)現(xiàn)孩子變得叛逆了起來植兰,這讓父母十分擔(dān)心,也讓整個家庭失去了歡聲笑語璃吧,孩子的青春期對孩子的...
    蘇蘇華閱讀 253評論 0 0