服務(wù)需要拆分到什么程度?

作者:陳斌

前言

創(chuàng)業(yè)公司往往因?yàn)橛邢薜臅r(shí)間和投入烟馅,把系統(tǒng)所有的功能都聚集在一起说庭。隨著業(yè)務(wù)的不斷發(fā)展,技術(shù)人員開始不斷地對(duì)架構(gòu)進(jìn)行解耦和拆分郑趁。微服務(wù)在最近幾年大行其道刊驴,很多公司的研發(fā)人員都在考慮微服務(wù)架構(gòu),或者在做微服務(wù)的路上寡润,拆分服務(wù)是個(gè)很熱的話題捆憎。那么我們應(yīng)該按照什么原則將現(xiàn)有的業(yè)務(wù)進(jìn)行拆分?是否拆分得越細(xì)就越好梭纹?這里我想談?wù)勏到y(tǒng)拆分需要考慮的因素和堅(jiān)持的原則躲惰。

業(yè)務(wù)因素

所有技術(shù)方面的考慮,包括架構(gòu)設(shè)計(jì)和解耦拆分都要考慮業(yè)務(wù)的需要变抽。在服務(wù)拆分時(shí)础拨,先從業(yè)務(wù)角度確定拆分的方案氮块。拆分的邊界要充分考慮業(yè)務(wù)的獨(dú)立性和專業(yè)性,比如搜索類服務(wù)诡宗、支付類服務(wù)滔蝉、購(gòu)物車類服務(wù),按服務(wù)的業(yè)務(wù)功能合理地劃出拆分邊界僚焦。避免按團(tuán)隊(duì)來定義服務(wù)邊界锰提,這樣做會(huì)出現(xiàn)土匪搶地盤的局面,嚴(yán)重破壞團(tuán)隊(duì)之間的信任芳悲,削弱創(chuàng)新的潛在機(jī)會(huì)立肘。

投入產(chǎn)出

衡量拆分收益的標(biāo)準(zhǔn)是拆分后的維護(hù)成本要低過拆分前的維護(hù)成本,也就是說不能因?yàn)椴鸱侄鴰砀蟮木S護(hù)工作名扛。

拆分前的維護(hù)成本 - 拆分后的維護(hù)成本 ≧ 0

服務(wù)的維護(hù)成本包括維護(hù)該服務(wù)所需要耗費(fèi)的人力谅年、物力和時(shí)間。如果一個(gè)系統(tǒng)拆分成兩個(gè)或兩個(gè)以上肮韧,導(dǎo)致所有的資源都加倍融蹂,那將會(huì)很失敗。最好的結(jié)果是原來維護(hù)服務(wù)的同一套人馬分成兩個(gè)部分弄企,因?yàn)椴鸱趾蠓?wù)的復(fù)雜性降低超燃,所需要的維護(hù)資源顯著減少,或者對(duì)人員能力的要求大大降低拘领。

組織結(jié)構(gòu)

拆分不僅僅是架構(gòu)上的調(diào)整意乓,也意味著要在組織結(jié)構(gòu)上做出相應(yīng)的適應(yīng)性調(diào)整,確保拆分后的服務(wù)由相對(duì)獨(dú)立的團(tuán)隊(duì)負(fù)責(zé)維護(hù)约素,盡量不要出現(xiàn)在不同服務(wù)之間的交叉調(diào)用届良。在這里要堅(jiān)持的原則是明確每個(gè)服務(wù)的分工,充分授權(quán)而且自給自足的相對(duì)獨(dú)立圣猎。切不可出現(xiàn)一個(gè)服務(wù)由幾個(gè)不同的團(tuán)隊(duì)共同負(fù)責(zé)的情況士葫,這會(huì)造成無人負(fù)責(zé)或多方爭(zhēng)搶,也不利于團(tuán)隊(duì)積累相關(guān)服務(wù)的經(jīng)驗(yàn)送悔。


系統(tǒng)擴(kuò)展

拆分的一個(gè)重要理由也是最有價(jià)值的結(jié)果是提高了系統(tǒng)的擴(kuò)展性慢显。用戶對(duì)不同的服務(wù)有不同的并發(fā)和性能方面的要求,因此服務(wù)具有不同的擴(kuò)展性放祟。把具有不同擴(kuò)展性要求的服務(wù)拆分出來分別進(jìn)行部署鳍怨,可以降低成本,提高效率跪妥。比如電商平臺(tái)的搜索服務(wù)有很多請(qǐng)求,需要特別好的擴(kuò)展性声滥,應(yīng)該把搜索服務(wù)分離出來眉撵,單獨(dú)考慮其擴(kuò)展性的需求侦香。這樣可以確保不會(huì)因?yàn)樗阉鞣?wù)突然繁忙而影響其他的服務(wù)。也可以根據(jù)搜索服務(wù)的特點(diǎn)纽疟,設(shè)計(jì)出適合擴(kuò)展的部署方案罐韩。


軟件發(fā)布

系統(tǒng)中經(jīng)常變動(dòng)的部分大約只占20%,剩下的80%基本不變或極少變化污朽,因此軟件的發(fā)布周期完全不同散吵。我們可以把不變的80%分離出來,單獨(dú)部署蟆肆,單獨(dú)管理矾睦。這不僅有利于降低系統(tǒng)的復(fù)雜性,精簡(jiǎn)團(tuán)隊(duì)的規(guī)模炎功;也有利于在系統(tǒng)發(fā)生故障的時(shí)候快速定位枚冗。如果不做這種拆分,系統(tǒng)在擴(kuò)展的過程中會(huì)浪費(fèi)很多資源蛇损。


信息安全

不同的服務(wù)可能對(duì)信息安全有不同的要求赁温,因此把需要高度安全的服務(wù)拆分出來,進(jìn)行特別的部署淤齐,比如放在防火墻的后面股囊,可以更有針對(duì)性地滿足信息安全的要求,也可以降低對(duì)防火墻等安全設(shè)備吞吐量更啄、并發(fā)性等方面的要求稚疹,降低成本,提高效率锈死。這就像對(duì)家里不同房間的安全做不同的安排贫堰,確保需要加鎖的加鎖,減少了對(duì)鎖的需求量待牵,也減少了開門的麻煩其屏。

總結(jié)

所以我們?cè)诳紤]服務(wù)拆分時(shí),要堅(jiān)持:面向業(yè)務(wù)缨该、大道至簡(jiǎn)偎行、分而治之的三個(gè)原則,充分考慮業(yè)務(wù)需求贰拿、投入產(chǎn)出蛤袒、組織結(jié)構(gòu)、系統(tǒng)擴(kuò)展膨更、軟件發(fā)布和信息安全等方面妙真。不能只從技術(shù)角度出發(fā),把服務(wù)切成很多細(xì)微的小塊荚守,這樣做很有可能會(huì)出現(xiàn)勞民傷財(cái)珍德、欲速而不達(dá)的結(jié)果练般。


好消息

易寶 CTO 陳斌翻譯的新書《架構(gòu)真經(jīng)》正在京東和亞馬遜熱賣!

《架構(gòu)真經(jīng)》:《架構(gòu)即未來》姊妹篇锈候,硅谷大咖的干貨呈現(xiàn)薄料,互聯(lián)網(wǎng)架構(gòu)的50條軍規(guī)。唐彬泵琳、向江旭摄职、葉亞明、段念获列、吳華鵬谷市、張瑞海、韓軍蛛倦、程炳皓歌懒、張?jiān)迫⒂喑克莺⒗畲髮W(xué)及皂、霍泰穩(wěn)聯(lián)袂力薦。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末且改,一起剝皮案震驚了整個(gè)濱河市验烧,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌又跛,老刑警劉巖碍拆,帶你破解...
    沈念sama閱讀 221,576評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異慨蓝,居然都是意外死亡感混,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門礼烈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來弧满,“玉大人,你說我怎么就攤上這事此熬⊥ノ兀” “怎么了?”我有些...
    開封第一講書人閱讀 168,017評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵犀忱,是天一觀的道長(zhǎng)募谎。 經(jīng)常有香客問我,道長(zhǎng)阴汇,這世上最難降的妖魔是什么数冬? 我笑而不...
    開封第一講書人閱讀 59,626評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮搀庶,結(jié)果婚禮上吉执,老公的妹妹穿的比我還像新娘疯淫。我一直安慰自己地来,他們只是感情好戳玫,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,625評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著未斑,像睡著了一般咕宿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蜡秽,一...
    開封第一講書人閱讀 52,255評(píng)論 1 308
  • 那天府阀,我揣著相機(jī)與錄音,去河邊找鬼芽突。 笑死试浙,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的寞蚌。 我是一名探鬼主播田巴,決...
    沈念sama閱讀 40,825評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼挟秤!你這毒婦竟也來了壹哺?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,729評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤艘刚,失蹤者是張志新(化名)和其女友劉穎管宵,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體攀甚,經(jīng)...
    沈念sama閱讀 46,271評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡箩朴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,363評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了秋度。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片炸庞。...
    茶點(diǎn)故事閱讀 40,498評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖静陈,靈堂內(nèi)的尸體忽然破棺而出燕雁,到底是詐尸還是另有隱情,我是刑警寧澤鲸拥,帶...
    沈念sama閱讀 36,183評(píng)論 5 350
  • 正文 年R本政府宣布拐格,位于F島的核電站,受9級(jí)特大地震影響刑赶,放射性物質(zhì)發(fā)生泄漏捏浊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,867評(píng)論 3 333
  • 文/蒙蒙 一撞叨、第九天 我趴在偏房一處隱蔽的房頂上張望金踪。 院中可真熱鬧浊洞,春花似錦、人聲如沸胡岔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽靶瘸。三九已至苫亦,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間怨咪,已是汗流浹背屋剑。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留诗眨,地道東北人唉匾。 一個(gè)月前我還...
    沈念sama閱讀 48,906評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像匠楚,于是被迫代替她去往敵國(guó)和親巍膘。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,507評(píng)論 2 359

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