摘要:美團(tuán)技術(shù)專家澡腾、供應(yīng)鏈平臺(tái)系統(tǒng)負(fù)責(zé)人陳義宏簡(jiǎn)單介紹了美團(tuán)供應(yīng)鏈系統(tǒng)架構(gòu)庐镐,以及其演進(jìn)歷程。
完善的供應(yīng)鏈系統(tǒng)倾鲫,是美團(tuán)自創(chuàng)立至今持續(xù)茁壯成長(zhǎng)的基礎(chǔ)所在粗合。它經(jīng)歷“千團(tuán)大戰(zhàn)”和后來(lái)殘酷同業(yè)競(jìng)爭(zhēng)的重重磨練。在不斷的自我優(yōu)化與創(chuàng)新中乌昔,幫助美團(tuán)奠定了團(tuán)購(gòu)行業(yè)的領(lǐng)先地位隙疚。而面對(duì)企業(yè)今后多元化業(yè)務(wù)的發(fā)展需要,這個(gè)系統(tǒng)又進(jìn)行了架構(gòu)的重塑磕道。
在UPYUN主辦的“UPYUN Open Talk”第三期北京站上供屉,美團(tuán)技術(shù)專家、供應(yīng)鏈平臺(tái)系統(tǒng)負(fù)責(zé)人陳義宏向與會(huì)的知名企業(yè)及創(chuàng)業(yè)團(tuán)隊(duì)的開發(fā)者們做了深入淺出的精彩分享捅厂。
美團(tuán)供應(yīng)鏈系統(tǒng)架構(gòu)簡(jiǎn)介及演進(jìn)歷程 via陳義宏
以下為分享摘錄:
供應(yīng)鏈系統(tǒng)簡(jiǎn)介
美團(tuán)是以團(tuán)購(gòu)起家并作為核心業(yè)務(wù)贯卦,之后增加了一些支付、商家管理焙贷,包括驗(yàn)證撵割、憑證方面還有其他的等業(yè)務(wù)。供應(yīng)鏈系統(tǒng)主要負(fù)責(zé)商品的生產(chǎn)和商品的運(yùn)營(yíng)辙芍,其中的這個(gè)“商品”指的是我們本地的生活服務(wù)的各種套餐啡彬、代金券和其他的業(yè)務(wù)。
關(guān)注過(guò)團(tuán)購(gòu)領(lǐng)域的朋友們應(yīng)該聽(tīng)說(shuō)過(guò)“千團(tuán)大戰(zhàn)”故硅,美團(tuán)之所以能在這樣的挑戰(zhàn)中活下來(lái)庶灿,一個(gè)重要原因是我們的BD比較牛。這一塊的工作流程是:在BD與商家談妥之后吃衅,會(huì)給商家在美團(tuán)建立一個(gè)帳號(hào)往踢,簽訂合同,以便在之后把談妥的這些東西變成大家在手機(jī)APP或者是網(wǎng)站上出售的東西徘层,比如團(tuán)購(gòu)券峻呕。從BD談妥單子,到消費(fèi)者能從網(wǎng)頁(yè)上買到商品趣效,這中間的過(guò)程都是供應(yīng)鏈完成的工作瘦癌。
它的定位,是給美團(tuán)是正在茁壯成長(zhǎng)的業(yè)務(wù)提供支持跷敬,因此它的建設(shè)是一步步循序漸進(jìn)的讯私。
供應(yīng)鏈系統(tǒng)的發(fā)展演進(jìn)
美團(tuán)的供應(yīng)鏈系統(tǒng)的架構(gòu)不是很復(fù)雜,它是隨著公司創(chuàng)立到在現(xiàn)在的各個(gè)發(fā)展階段而一步步建立起來(lái)的西傀,架構(gòu)有一個(gè)不斷演進(jìn)的過(guò)程斤寇。
1.手工階段
系統(tǒng)初創(chuàng)是在2010年,當(dāng)時(shí)我們是模仿美國(guó)的例子池凄,一天一單抡驼,全靠手工。單子上傳上去肿仑,七天之后才可以在網(wǎng)站上看見(jiàn)致盟。流程上有編審的程序碎税,不但要審核,還要專人進(jìn)行編輯馏锡。這種情況延續(xù)到2011年雷蹂,高層進(jìn)行了一個(gè)星期的考量之后,決定一天要上多單杯道。
2. 從在線化到自動(dòng)化
從這時(shí)起匪煌,我們要求每天上單量達(dá)到250,并相應(yīng)安排了250個(gè)編輯党巾。因此萎庭,公司開始建立一個(gè)合同和CMS,就是替換成編輯的手工工作齿拂。CMS是結(jié)構(gòu)化驳规,有三大塊,原來(lái)一個(gè)人的工作分成三個(gè)人來(lái)做署海。做完這個(gè)之后一個(gè)人可以上11單吗购。
和滴答團(tuán)、拉手砸狞、糯米競(jìng)爭(zhēng)時(shí)捻勉,美團(tuán)并不占據(jù)很大優(yōu)勢(shì)。公司針對(duì)性地調(diào)整了策略刀森,大幅度增加每天上單的數(shù)量踱启,計(jì)劃要一天上幾千單。就一個(gè)單子和商家談好之后研底,要盡快上線禽捆。
之后,公司基本上把整個(gè)關(guān)鍵系統(tǒng)重新寫了飘哨,把每一個(gè)看見(jiàn)的元素都屬性化。具體做法琐凭,就是在同一屬性的情況下做了一個(gè)模板的概念芽隆,模板可以根據(jù)不同的品類具有不同的屬性。
我們結(jié)合前端一起根據(jù)我們模板配置统屈,根據(jù)配置自動(dòng)輸出目錄界面的一套系統(tǒng)胚吁,就是動(dòng)態(tài)表單。輸出基本上每一個(gè)屬性都有一個(gè)ID愁憔,有一個(gè)值腕扶。后來(lái)又節(jié)省了大量編輯或?qū)徍巳藛T的工作,又裁掉了大部分的頁(yè)面美化工序吨掌,效率得到了大大提升半抱,做了非常多的自動(dòng)化的工作脓恕,上單時(shí)間減少到2天。
這樣窿侈,到2014年9月份炼幔,我們的上單量一天接近1.4萬(wàn)單/日。編輯數(shù)量也從最初的240人縮減到10人史简,上單時(shí)間一般都是在一天之內(nèi)乃秀。這之后,美團(tuán)奠定了團(tuán)購(gòu)領(lǐng)頭羊的地位圆兵。
向多業(yè)務(wù)支撐化發(fā)展
1. 平臺(tái)+差異化
在如今跺讯,整個(gè)行業(yè)都處于不斷的快速變化中。團(tuán)購(gòu)現(xiàn)在已經(jīng)無(wú)法支撐一家比較大的公司了殉农,我們很多的競(jìng)爭(zhēng)對(duì)手都已經(jīng)開始涉及新業(yè)務(wù)刀脏,比如點(diǎn)評(píng)投資餓了么,主打外賣统抬。美團(tuán)也要做同樣的發(fā)展火本,所以就有了美團(tuán)外賣和早餐的出現(xiàn)。此外還有一些新的品類垂直運(yùn)營(yíng)聪建,像KTV钙畔、并作項(xiàng)目,現(xiàn)在有獨(dú)立團(tuán)隊(duì)在運(yùn)營(yíng)金麸;酒店和售票的領(lǐng)域也進(jìn)行了拓展∏嫖觯現(xiàn)有業(yè)務(wù)都會(huì)在飛速發(fā)展中,包括一些新的形式挥下,像到家服務(wù)揍魂,以及代替代金券的滿減。
以上這些的新業(yè)務(wù)棚瘟,給供應(yīng)鏈系統(tǒng)提出了挑戰(zhàn)——從單一的團(tuán)購(gòu)到解決多業(yè)務(wù)支撐现斋,我們?cè)撛趺醋觯渴紫葢?yīng)該對(duì)它進(jìn)行重新的梳理偎蘸。對(duì)比有些在供應(yīng)鏈系統(tǒng)上投入幾十個(gè)人團(tuán)隊(duì)的企業(yè)庄蹋,我們現(xiàn)在人員要少得多,2013年只有兩個(gè)人迷雪,如今也只有11限书、12個(gè)人在做。因此現(xiàn)在需要改變之前這種粗獷的章咧、不考慮系統(tǒng)內(nèi)部設(shè)計(jì)的快速迭代發(fā)展方式倦西。
因此,我們分析了美團(tuán)內(nèi)部的系統(tǒng)赁严,比如我們的外賣扰柠、早餐粉铐、酒店,尋找它們上單的流程存在哪些共性和差異耻矮。差異基本上都體現(xiàn)在流程和展示方面秦躯,我們就對(duì)這些差異進(jìn)行結(jié)構(gòu)化的定義,對(duì)它們進(jìn)行針對(duì)性的優(yōu)化裆装。
比如現(xiàn)在有閃電上單踱承,BD上單,銷售人員和商家談妥了之后自行上單哨免。另外我們還有商家自助上單茎活。雖然它們的流程不一樣,但是他們的底層相同的琢唾。我要做的就是這種統(tǒng)一平臺(tái)+差異化流程的系統(tǒng)優(yōu)化载荔。
前面提到了動(dòng)態(tài)表單,它其中的一個(gè)問(wèn)題就是屬性綁定采桃。而當(dāng)我們上單渠道多的時(shí)候懒熙,同一個(gè)屬性在不同的上單渠道上顯示的值的數(shù)量可能不同。現(xiàn)在的方法普办,就是把這些值剝離開來(lái)工扎,變成一個(gè)AC(屬性中心),和一個(gè)DF(動(dòng)態(tài)表單)衔蹲。我們會(huì)做各種上單錄入的模板肢娘,每個(gè)渠道都不一樣。而且會(huì)為每一個(gè)屬性在不同的渠道定義不同的顯示項(xiàng)舆驶,再根據(jù)顯示項(xiàng)來(lái)產(chǎn)生組成我的模板橱健,再把模板輸出到具體的錄入的過(guò)程當(dāng)中。
同時(shí)沙廉,系統(tǒng)的CMS也是根據(jù)屬性去生成頁(yè)面拘荡。我們會(huì)在保持我們產(chǎn)品中心非常平臺(tái)化的情況下,做一個(gè)差異化的適配撬陵。以做KTV的上單系統(tǒng)為例俱病,因?yàn)樯碳铱赡鼙任覀兝斫獾母钊耄虼司妥屗麄兌ò鼛そ帷r(shí)間和酒水,而適配我們來(lái)做途凫。在價(jià)格垢夹、結(jié)算和庫(kù)存這塊都有以產(chǎn)品為中心,輸給我們的下游维费。通過(guò)我們系統(tǒng)屏蔽了各種不同商家渠道和不同業(yè)務(wù)的差異果元,臟活累活我們來(lái)做促王,給所有下游系統(tǒng)的工作提供了很大的便利。
2. 產(chǎn)品中心的結(jié)構(gòu)
這個(gè)是我們的產(chǎn)品中心而晒,這是它內(nèi)部的結(jié)構(gòu)蝇狼,我們會(huì)做一些抽象,比如說(shuō)消費(fèi)單元倡怎,一個(gè)人最終能夠到商家那里去消費(fèi)的東西迅耘。比如理發(fā)店,理發(fā)就是一個(gè)消費(fèi)單元监署,理發(fā)的時(shí)候還給你掏一下耳朵颤专,那也是一個(gè)小費(fèi)單元。
至于銷售單元钠乏,這個(gè)和用戶最終享受到的服務(wù)有一定的關(guān)系栖秕,但定義的方向不同。從銷售的概念來(lái)說(shuō)晓避,比如你買一臺(tái)iPhone簇捍,銷售單元就是iPhone+耳機(jī)+貼膜之類,而這其中的消費(fèi)單元就是單獨(dú)的手機(jī)/耳機(jī)/貼膜俏拱。銷售單元就是一個(gè)打包暑塑,是消費(fèi)單元在網(wǎng)站上售賣的不可分開購(gòu)買的一個(gè)抽象。所以我們有了銷售單元之后彰触,我們的庫(kù)存是做在銷售單元之上梯投。
團(tuán)購(gòu)是一個(gè)類型,套餐是另一個(gè)類型况毅。KTV可能沒(méi)有物流信息分蓖,但是他有預(yù)定信息,因此尔许,我們可以在產(chǎn)品層次上根據(jù)不同的業(yè)務(wù)線做抽象么鹤。而產(chǎn)品作為我們最終出售的東西,它有一套銷售規(guī)則:比如這個(gè)商品的開賣時(shí)間或者搶購(gòu)時(shí)間味廊;它的購(gòu)買渠道蒸甜,比如這個(gè)套餐只能在手機(jī)端購(gòu)買在PC端不行;還有購(gòu)買規(guī)則余佛,比如一個(gè)手機(jī)號(hào)只能買一個(gè)柠新,此外還有消費(fèi)規(guī)則。這樣辉巡,通過(guò)整個(gè)這一套體系恨憎,基本上能夠在底層支撐我們現(xiàn)有旅游、外賣、酒店憔恳、物流的多元化業(yè)務(wù)瓤荔,團(tuán)購(gòu)自然不在話下。
這就是我們現(xiàn)在支撐多業(yè)務(wù)的平臺(tái)+差異化的基礎(chǔ)钥组,在此基礎(chǔ)上是一些流程输硝。每一個(gè)系統(tǒng)將來(lái)要接入一個(gè)新的業(yè)務(wù)的話,它只需要通過(guò)我們的AC+DF一個(gè)界面程梦,經(jīng)過(guò)我們的流程点把,再接入我們平臺(tái)化的東西,這個(gè)業(yè)務(wù)就會(huì)得到系統(tǒng)的支持作烟。