談?wù)勅蹟嗯c降級(jí)

筆者在工作中贩虾,主要維護(hù)所在bg的營(yíng)銷活動(dòng)的列表旷赖,活動(dòng)的列表像商詳頁或團(tuán)詳頁一樣需要聚合大量服務(wù)提供的數(shù)據(jù),而且作為后兩者的入口泣崩,活動(dòng)列表出不得任何閃失少梁,否則結(jié)局必是災(zāi)難性的。每一次的大促活動(dòng)能否平安度過矫付,取決于平日準(zhǔn)備時(shí)對(duì)這些下游服務(wù)更好地把控凯沪。熔斷降級(jí)作為最基本和有效的手段,保證了服務(wù)的柔性可用买优,提高系統(tǒng)整體的可用性與穩(wěn)定性妨马。接下來就談?wù)勅蹟嗪徒导?jí)。

先簡(jiǎn)單一句話概括而叼,降級(jí)就是在調(diào)用的下游服務(wù)A出現(xiàn)問題(常見超時(shí))身笤,提供PLAN-B豹悬,返回的效果可能沒有服務(wù)A好葵陵,但是聊勝于無。而熔斷器的存在就是要保障何時(shí)走到降級(jí)方法瞻佛,何時(shí)恢復(fù)脱篙,以什么樣的策略恢復(fù)。

接下來伤柄,我想舉個(gè)例子绊困,詳細(xì)說明熔斷降級(jí)的作用和必要性。

就用我們公司最有意思的神秘民間組織适刀,美團(tuán)外賣舉例秤朗。

如上圖,我們公司在該地區(qū)一共有4個(gè)外面小哥笔喉,編號(hào)0-3取视;該地有6家流行餐廳,幾乎是用戶必點(diǎn)常挚。編號(hào)從A-F作谭。故事開始前,我們做如下假定:

(1)外賣火爆奄毡,幾乎外賣小哥每次在外都能接到不止一單折欠,且是不同的餐廳;

(2)外賣小哥都是耿直的人,不取完本次接單的幾家餐廳锐秦,不輕易送餐咪奖。

一切看起來很和諧,直到有一天酱床,餐廳A出事了赡艰,主廚的大叔失戀了,出餐的速度大降斤葱。每個(gè)要去餐廳A取餐的小哥都要花費(fèi)更長(zhǎng)的時(shí)間在A等餐慷垮。而且餐廳A越流行,出餐速度越慢揍堕,排隊(duì)等待的小哥就會(huì)越多料身。在上圖中,最后4個(gè)外賣小哥衩茸,有3個(gè)都排隊(duì)在等A餐廳的飯食芹血。這有兩點(diǎn)直接影響:

(1)不光是A,其他餐廳單子也還沒有配送楞慈,用戶吃不到A的飯幔烛,就連其他用戶點(diǎn)的B、C囊蓝、D的飯也不能配送饿悬,差評(píng),卸載聚霜,美團(tuán)一生黑狡恬;

(2)3/4的外賣小哥處于低效率地排隊(duì)等待,而不是送餐蝎宇,降低了整個(gè)公司在該地區(qū)的配送效率弟劲,老王坐不住了。

然而姥芥,正如江湖傳言兔乞,美團(tuán)外賣是個(gè)神秘的組織,有一天凉唐,一個(gè)機(jī)智的小哥庸追,橫空出世,改變了整個(gè)行業(yè)的布局熊榛。


小哥在餐廳A親自操刀锚国,很快就做完后,送餐了玄坦。用戶收到熱乎乎的飯菜血筑,吃起來沒有以前的好吃绘沉,但也覺察不出任何異樣,不會(huì)投訴豺总;整個(gè)地區(qū)的小哥又重新流通起來车伞,恢復(fù)到大叔失戀前的配送效率。

后來喻喳,在公司的內(nèi)部總結(jié)中另玖。發(fā)現(xiàn)不光是A餐廳的大叔會(huì)失戀,C餐廳D餐廳的大叔們也偶爾失戀表伦,影響出餐速度谦去。后來公司和這些餐廳們商量,為更好的規(guī)范化出餐流程蹦哼,各餐廳新添加二叔鳄哭,二叔廚藝一般,請(qǐng)二叔各餐廳花費(fèi)成本不高纲熏,所以紛紛表示贊同妆丘。

在實(shí)踐的過程中,小哥和大叔二叔們約定局劲,如果在規(guī)定時(shí)間和次數(shù)勺拣,大叔不能按時(shí)出參,那么二叔替代大叔鱼填,接相同的單药有,用同樣的鍋;大叔的出餐速度會(huì)被定期檢查剔氏,是否恢復(fù)了正常水平塑猖,恢復(fù)了之后竹祷,單子慢慢還由大叔下廚谈跛。

現(xiàn)在,我們來對(duì)應(yīng)下關(guān)系塑陵。

美團(tuán)外賣大本營(yíng)——容器感憾,常見的如tomcat,jetty的線程池

外賣小哥——線程

?餐廳——服務(wù)接口

二叔——降級(jí)方法

大叔到二叔的切換——熔斷

恢復(fù)大叔下廚——熔斷降級(jí)的恢復(fù)策略令花。

熔斷保證了下游服務(wù)在出錯(cuò)率達(dá)到閾值時(shí)阻桅,上游調(diào)用切換到降級(jí)方法,提供有損服務(wù)兼都,避免服務(wù)的級(jí)聯(lián)失敗嫂沉,影響整個(gè)系統(tǒng)的穩(wěn)定性。熔斷的時(shí)機(jī)扮碧,取決于業(yè)務(wù)的實(shí)際場(chǎng)景和流量大小趟章,不要過高杏糙,也不要過低;恢復(fù)的策略蚓土,其核心是恢復(fù)的速率宏侍,不要過快也不要過慢。一句廢話蜀漆,看需求谅河。

在公司,我們有自己的故障演練分析防護(hù)的平臺(tái)确丢,由于沒開源绷耍,不便過多閑話。在開源社區(qū)鲜侥,也有很多相應(yīng)的產(chǎn)品锨天,比較推薦的,也是目前使用較為廣泛的是NetFlix的Hystrix剃毒,Hystrix是個(gè)完善的容錯(cuò)庫病袄,實(shí)現(xiàn)了熔斷降級(jí)、線程隔離赘阀、限流等多種功能益缠,開箱即用,有需要的朋友速速入手吧基公。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末幅慌,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子轰豆,更是在濱河造成了極大的恐慌胰伍,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件酸休,死亡現(xiàn)場(chǎng)離奇詭異骂租,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)斑司,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門渗饮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人宿刮,你說我怎么就攤上這事互站。” “怎么了僵缺?”我有些...
    開封第一講書人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵胡桃,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我磕潮,道長(zhǎng)翠胰,這世上最難降的妖魔是什么懊纳? 我笑而不...
    開封第一講書人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮亡容,結(jié)果婚禮上嗤疯,老公的妹妹穿的比我還像新娘。我一直安慰自己闺兢,他們只是感情好茂缚,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著屋谭,像睡著了一般脚囊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上桐磁,一...
    開封第一講書人閱讀 52,394評(píng)論 1 310
  • 那天悔耘,我揣著相機(jī)與錄音,去河邊找鬼我擂。 笑死衬以,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的校摩。 我是一名探鬼主播看峻,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼衙吩!你這毒婦竟也來了互妓?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤坤塞,失蹤者是張志新(化名)和其女友劉穎冯勉,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體摹芙,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡灼狰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了瘫辩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片伏嗜。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖伐厌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情裸影,我是刑警寧澤挣轨,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站轩猩,受9級(jí)特大地震影響卷扮,放射性物質(zhì)發(fā)生泄漏荡澎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一晤锹、第九天 我趴在偏房一處隱蔽的房頂上張望摩幔。 院中可真熱鬧,春花似錦鞭铆、人聲如沸或衡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽封断。三九已至,卻和暖如春舶担,著一層夾襖步出監(jiān)牢的瞬間坡疼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工衣陶, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留柄瑰,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓剪况,卻偏偏與公主長(zhǎng)得像狱意,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子拯欧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359

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