十年京东,十年技术发展—畅读《京东技术解密》
《京東技術(shù)解密》試讀章節(jié)共71頁,我花了兩天時(shí)間仔細(xì)讀完,讀了過后感到意猶未盡,非常想一口氣把整本讀完,然而只能將試讀章節(jié)反復(fù)讀了好幾遍,收獲頗多,遂有此文,借此總結(jié)京東十年來的技術(shù)變遷和迅速發(fā)展。
之所以對這本書感興趣基于兩個(gè)原因:一是自己最近剛好在讀一本書《不戰(zhàn)斗不成功:劉強(qiáng)東和京東商城的“野蠻”奮斗史》,見識(shí)到了劉強(qiáng)東本人豐富的創(chuàng)業(yè)經(jīng)歷,與當(dāng)當(dāng)網(wǎng)拼圖書、與淘寶網(wǎng)拼百貨、與蘇寧易購拼家電,京東真是什么都賣,這份處處競爭的心也值得佩服。二是自己一直對京東印象不錯(cuò),覺得京東是“正品多、假貨少、物流快”,也經(jīng)常在上面買東西。作為一名技術(shù)人員,也就非常想知道支撐京東背后的技術(shù)架構(gòu)是什么。
文中一開頭劉強(qiáng)東大哥總結(jié)的就很好,直接說明本書的目的所在:
京東可以高速發(fā)展到今天的規(guī)模的原因,其中最核心的是堅(jiān)持“倒三角”戰(zhàn)略:建立出色的團(tuán)隊(duì);打造財(cái)務(wù)、物流和技術(shù)三大核心系統(tǒng);降低成本、提升效率;為用戶帶來最佳體驗(yàn)。在《京東技術(shù)解密》一書中,大家會(huì)看到技術(shù)驅(qū)動(dòng)的力量,這也是京東第一次全面展示自己的技術(shù)體系。
從2004年京東剛上線只有一組簡單展示IT產(chǎn)品的網(wǎng)頁,到如今京東已經(jīng)是覆蓋PC端、移動(dòng)端,并完整支撐物流、訂單、交易、商品、財(cái)務(wù)系統(tǒng)的巨大電商平臺(tái);從當(dāng)初的四五個(gè)人到如今的4000+人;從簡單的.Net+SQLServer 系統(tǒng)到主要基于Java 的大規(guī)模分布式系統(tǒng)。十年來,京東的技術(shù)平臺(tái)實(shí)現(xiàn)了高速成長,漸漸的從業(yè)務(wù)主導(dǎo)型轉(zhuǎn)為技術(shù)驅(qū)動(dòng)型。
京東的系統(tǒng)比較復(fù)雜,涵蓋電商全流程全價(jià)值鏈,從前端的交易系統(tǒng)到供應(yīng)鏈,到倉儲(chǔ)、配送、客服以及售后,除了財(cái)務(wù)報(bào)表之外,幾乎全部系統(tǒng)都是自己研發(fā)的。下面總結(jié)京東的技術(shù)和管理變遷。
如何管理4000人的團(tuán)隊(duì)?
1. 組織架構(gòu)優(yōu)化的重要性
以前的京東其技術(shù)團(tuán)隊(duì)一直是職能化結(jié)構(gòu):產(chǎn)品部、研發(fā)部、測試部以及運(yùn)維部門。但當(dāng)員工越來越多時(shí),這樣的技術(shù)團(tuán)隊(duì)協(xié)作、溝通、優(yōu)先級(jí)劃分都很困難,因此14年京東對技術(shù)團(tuán)隊(duì)做了調(diào)整:研發(fā)體系分為9 大模塊4 個(gè)平臺(tái)。
9大模塊:提供基礎(chǔ)設(shè)施的云平臺(tái)和運(yùn)維、實(shí)現(xiàn)網(wǎng)上營銷的營銷研發(fā)部、針對COO體系的運(yùn)營研發(fā)部、實(shí)現(xiàn)內(nèi)部信息化管理的職能研發(fā)部、提供統(tǒng)一的大數(shù)據(jù)技術(shù)平臺(tái)的大數(shù)據(jù)部、負(fù)責(zé)移動(dòng)客戶端研發(fā)的移動(dòng)部、負(fù)責(zé)全國研究院建設(shè)的研究院和主要負(fù)責(zé)管理體系建設(shè)的技術(shù)研發(fā)管理部。
4個(gè)平臺(tái):技術(shù)平臺(tái)(打造基于云的技術(shù)架構(gòu),支撐其上所有的應(yīng)用)、大數(shù)據(jù)平臺(tái)(數(shù)據(jù)獨(dú)立、大數(shù)據(jù)處理)、電商開發(fā)API平臺(tái)(以API 服務(wù)的方式進(jìn)行服務(wù))、應(yīng)用平臺(tái)(包括自己的網(wǎng)站、移動(dòng)客戶端、內(nèi)部的ERP及外部的ISV 開發(fā)應(yīng)用)。
組織結(jié)構(gòu)的調(diào)整解救了京東因?yàn)閳F(tuán)隊(duì)人多導(dǎo)致組織混亂和管理困難的問題。
2. IT 管理123:1 個(gè)愿景、2 個(gè)重點(diǎn)、3 個(gè)體系
- 1個(gè)愿景:即希望或目標(biāo),“做中國最有影響力的技術(shù)團(tuán)隊(duì)”。hope是很重要的,有了hope就有了動(dòng)力、有了干勁,幾千人為同一個(gè)目標(biāo)共同奮斗、努力是一件很值得自豪的事情。
- 2個(gè)重點(diǎn):文化和結(jié)構(gòu)。我個(gè)人一直認(rèn)為公司的文化和氛圍非常重要,你工作的開不開心、值不值或有沒有干勁與公司的文化息息相關(guān),好的文化會(huì)讓人們覺得工作是享受的,而不好的文化會(huì)讓人厭惡工作、抱怨老板。我一直認(rèn)為華為這么國內(nèi)外都很知名、強(qiáng)大的公司為什么口碑如此不好,是與其差的公司文化直接相關(guān)的(個(gè)人愚見),培養(yǎng)好的文化需要關(guān)注3個(gè)詞:信任、分享和成長。結(jié)構(gòu)就不用說了,基本上現(xiàn)在稍微大點(diǎn)的公司都會(huì)出現(xiàn)人才梯隊(duì),比如阿里的P系列,京東與騰訊一樣是T系列。
- 3 個(gè)體系:產(chǎn)品體系、架構(gòu)體系、管理體系。京東打造了讓產(chǎn)品經(jīng)理說了算的文化,避免了業(yè)務(wù)部門、產(chǎn)品部門和研發(fā)部門互相綁架的局面。架構(gòu)也是讓架構(gòu)師說了算,不是管理者說了算。
與騰訊ECC融合背后的故事
2014 年3 月10 日上午,京東集團(tuán)與騰訊宣布建立戰(zhàn)略合作伙伴關(guān)系。當(dāng)時(shí)這條消息爆炸在各大IT圈中,我當(dāng)時(shí)也在納悶:一個(gè)賣東西的和一個(gè)聊天的怎么能合作的起來。當(dāng)然,當(dāng)時(shí)了解的信息不多,也沒用過QQ網(wǎng)購平臺(tái)和拍拍。直到看了本書這章后,才徹徹底底明白了兩者融合的前因后果和過程的艱辛不易。
這次融合讓京東從自營為主的B2C 業(yè)務(wù)轉(zhuǎn)變成自營B2C+平臺(tái)B2C+C2C 的完整電商生態(tài)系統(tǒng)。且在移動(dòng)端,騰訊微信的流量優(yōu)勢以及三四線顧客群的覆蓋,使得騰訊與京東形成優(yōu)勢互補(bǔ)。
1. 京東與易迅的整合
這需要完成技術(shù)對接,包括商品、訂單和庫存的對接。說起來容易,做起來難,雙方的體量都很大,易迅的主流系統(tǒng)有十幾個(gè),京東的主流系統(tǒng)更有幾十個(gè),而易迅在被騰訊收購之后又對系統(tǒng)進(jìn)行了幾次調(diào)整,其復(fù)雜性可想而知。因此怎樣最快解決問題、推出商品,對雙方都是很大的考驗(yàn)。
- 首先需要解決快速溝通的問題:雙方的研發(fā)體系龐大,人員眾多,系統(tǒng)對接工作涉及一百多人,溝通過程中怎樣快速找到相關(guān)人,信息怎樣準(zhǔn)確傳遞,都令人困擾。有時(shí)候打電話溝通不清楚,就當(dāng)面溝通——出差,經(jīng)常在北上深之間飛奔。
- 做中間轉(zhuǎn)換接口匹配數(shù)據(jù):京東和易迅兩個(gè)網(wǎng)站的用戶群體的偏好存在很大的差異,雙方網(wǎng)站用戶的重合度非常低,而用戶和流量是電商平臺(tái)最重要的資產(chǎn),因此所有產(chǎn)品的對接和系統(tǒng)設(shè)計(jì)都要以用戶體驗(yàn)為第一,否則可能會(huì)引起用戶的流失,進(jìn)而導(dǎo)致流量的下降。但雙方系統(tǒng)都各自運(yùn)行了很多年,不管是用戶體驗(yàn),還是業(yè)務(wù)場景上都有很大的不同,比如在配送環(huán)節(jié),易迅有一日三送,而京東是定時(shí)達(dá)等等。這些都不能簡單統(tǒng)一為一個(gè),而必須能互相兼容,且用戶體驗(yàn)只能增強(qiáng)。類似這樣的不同點(diǎn)多達(dá)幾十處,最后的方案就是做一個(gè)中間轉(zhuǎn)換接口,分別來解析和匹配兩邊的數(shù)據(jù)對接,并通過歷史記憶來自動(dòng)匹配。
2. 京東與QQ網(wǎng)購的融合
融合目標(biāo)一旦確定下來,就容不得半點(diǎn)遲疑,北京即刻成立了專門的項(xiàng)目小組,并在京東會(huì)議室資源非常緊張的情況下申請了一間專用會(huì)議室作為戰(zhàn)時(shí)指揮部,主要項(xiàng)目組成員隨即打點(diǎn)行囊入駐、封閉,還需要北京、深圳兩地多個(gè)業(yè)務(wù)、產(chǎn)品、研發(fā)團(tuán)隊(duì)無數(shù)次的溝通、修正和冥思苦想。此次的融合是空前的,不同的文化、不同的地域、獨(dú)立的系統(tǒng),要全面打通面臨著各種技術(shù)、商務(wù)、工作方式等方面的不同。需求上的、技術(shù)上的以及要平衡各個(gè)相關(guān)方的利益而產(chǎn)生的各種待確認(rèn)問題,像一場又一場密集的流星雨,每天在項(xiàng)目指揮部的上空火花帶閃電般接踵而至。從項(xiàng)目伊始到項(xiàng)目結(jié)尾,這期間經(jīng)歷的艱辛與努力很值得我們細(xì)細(xì)回味和學(xué)習(xí)。
3. 京東與拍拍的融合
京東的加入讓拍拍煥然一新,之前臃腫不堪的首頁即刻換成了如今的清新大方,商品也豐富了不少,賬戶系統(tǒng)的打通歷經(jīng)了N條方案和無數(shù)群組討論,期間寧愿延遲項(xiàng)目發(fā)布也不犧牲用戶體驗(yàn)的做法很值得推崇。
京東的大數(shù)據(jù)平臺(tái)演變歷程
現(xiàn)在沒有哪個(gè)大公司不關(guān)注大數(shù)據(jù)的,13年初的時(shí)候,在京東制定的下一個(gè)10 年發(fā)展規(guī)劃中明確提出,大數(shù)據(jù)戰(zhàn)略將成為公司重點(diǎn)戰(zhàn)略方向之一。
京東大數(shù)據(jù)平臺(tái)從無到有,從集中式到如今的分布式,從Oracle數(shù)據(jù)倉庫到JDW2.0,4 年期間完成了復(fù)雜的演變。技術(shù)的變遷都是需求驅(qū)動(dòng)的,京東也不例外。
1. 自建數(shù)據(jù)倉庫—解決數(shù)據(jù)服務(wù)不能自主的困境
數(shù)據(jù)多了,就需要成立專門的數(shù)據(jù)部門(Tiger 團(tuán)隊(duì)),其工作重點(diǎn)是數(shù)據(jù)分析與數(shù)據(jù)報(bào)表,但在沒有數(shù)據(jù)倉庫的年代里,分析師們只能依靠DBA 提供的兩臺(tái)查詢機(jī)排隊(duì)寫SQL 提數(shù),然后再拿回來做分析。遇到業(yè)務(wù)需求方描述不清或口徑不明確時(shí),往往要花大量時(shí)間溝通調(diào)研,反復(fù)提取數(shù)據(jù),這個(gè)過程耗時(shí)費(fèi)力不說,還會(huì)被需求方不斷催促,使得效率非常低下。Tiger的解決方案就是:自建數(shù)據(jù)倉庫,這是做到自主數(shù)據(jù)服務(wù)的必由之路。且采用的是基于開源的MySQL,采用集群(Cluster)應(yīng)用架構(gòu),支持大規(guī)模數(shù)據(jù)存儲(chǔ)與計(jì)算應(yīng)用,而沒有使用有著強(qiáng)大數(shù)據(jù)處理能力的Oracle BIEE 商業(yè)智能平臺(tái)。據(jù)提取與報(bào)表展現(xiàn)產(chǎn)品同樣采用開源技術(shù)自主研發(fā),后臺(tái)Java 程序,前端采用Ajax 框架Extjs。這種輕量級(jí)的數(shù)據(jù)產(chǎn)品在穩(wěn)定性及服務(wù)能力上與BIEE相比雖然有一定差距,但支持快速迭代及無與倫比的靈活性這些優(yōu)點(diǎn)也是成熟商業(yè)產(chǎn)品所無法替代的。正是自主研發(fā)、快速迭代和靈活應(yīng)用這些適用于互聯(lián)網(wǎng)企業(yè)的特點(diǎn),使得一系列產(chǎn)品和技術(shù)方案在快速成長的京東很好地支持了各種場景的數(shù)據(jù)需求,也成就了今天的京東大數(shù)據(jù)平臺(tái)。這對于其他成長中的互聯(lián)網(wǎng)企業(yè)也具有重要的借鑒意義。
2. 開始建設(shè)分布式數(shù)據(jù)倉庫
基于Hadoop,以Mapreduce 作為計(jì)算引擎的分布式數(shù)據(jù)倉庫開始建設(shè),因?yàn)榉植际降耐?#xff0c;Oracle漸漸的退出了京東數(shù)據(jù)倉庫。調(diào)度平臺(tái)功能逐漸完善,生產(chǎn)模式也由原來的單節(jié)點(diǎn)調(diào)度升級(jí)到分布式調(diào)度。今天的京東企業(yè)級(jí)數(shù)據(jù)倉庫JDW 便是在這樣的歷程中演變而來的。
京東大數(shù)據(jù)產(chǎn)品
- 調(diào)度平臺(tái):虛擬節(jié)點(diǎn)的引入、Plumber 技術(shù)的采用非常重要。
- 數(shù)據(jù)集成開發(fā)平臺(tái):里程碑產(chǎn)品,結(jié)束了數(shù)據(jù)分析師和業(yè)務(wù)部門數(shù)據(jù)需求人員通過客戶端工具手工提取數(shù)據(jù)的痛苦經(jīng)歷。從Extjs到Bootstrap前端技術(shù)的轉(zhuǎn)變也值得關(guān)注。
- 數(shù)據(jù)知識(shí)管理平臺(tái):提供類wiki的功能,這讓我想起了Confluence這款軟件,不知道使用它作為知識(shí)管理工具的公司多不多。
- 京東分析師:實(shí)現(xiàn)類Tableau的桌面系統(tǒng)。
- 數(shù)據(jù)挖掘平臺(tái):采用基于內(nèi)存的存儲(chǔ)引擎,集群資源調(diào)度與管理基于Hadoop Yarn 框架。
- 數(shù)據(jù)質(zhì)量監(jiān)控平臺(tái):實(shí)現(xiàn)數(shù)據(jù)的及時(shí)性、準(zhǔn)確性和完整性。
大數(shù)據(jù)技術(shù)創(chuàng)新
我覺得這一點(diǎn)非常重要,業(yè)界對大數(shù)據(jù)處理的技術(shù)方案幾乎已經(jīng)形成一套通用的技術(shù)架構(gòu),但為什么還有很多公司還是自己研發(fā)一套系統(tǒng)架構(gòu)(典型的如阿里),主要是因?yàn)椴煌男袠I(yè)及不同的實(shí)際業(yè)務(wù)需求,通用的方案一方面可能很臃腫,有許多不需要的功能,另一方面不夠靈活,不能實(shí)現(xiàn)特殊需求,因此大數(shù)據(jù)平臺(tái)建設(shè)所用核心技術(shù)依然需要付出一定的研發(fā)投入來實(shí)現(xiàn)定向的技術(shù)突破與應(yīng)用,即所謂的“定制開發(fā)”。京東在通用的開源技術(shù)架構(gòu)基礎(chǔ)上進(jìn)行定制開發(fā)和產(chǎn)品化,從技術(shù)和產(chǎn)品兩個(gè)層面實(shí)現(xiàn)微創(chuàng)新和突破性創(chuàng)新,打造堅(jiān)實(shí)的平臺(tái)基礎(chǔ)。技術(shù)微創(chuàng)新主要體現(xiàn)在平臺(tái)的基礎(chǔ)架構(gòu)上,產(chǎn)品層面的突破性創(chuàng)新主要體現(xiàn)在大數(shù)據(jù)管理應(yīng)用上,其中總結(jié)的創(chuàng)新點(diǎn)具有借鑒意義,需要的可以細(xì)看。
在需求的驅(qū)動(dòng)下,京東不斷研發(fā)出了海量數(shù)據(jù)實(shí)時(shí)計(jì)算平臺(tái)“漢江”、海量數(shù)據(jù)實(shí)時(shí)查詢產(chǎn)品“三峽”、基于分布式架構(gòu)的聯(lián)機(jī)分析處理系統(tǒng)和海量日志數(shù)據(jù)分析處理平臺(tái),文中分別介紹了它們的技術(shù)架構(gòu)。
這些大數(shù)據(jù)技術(shù)最終實(shí)現(xiàn)了精準(zhǔn)營銷(例如通過郵件個(gè)性化推薦產(chǎn)品)、電商C2B 定制(例如京東的JDPhone 計(jì)劃)、用戶畫像(解決把數(shù)據(jù)轉(zhuǎn)化為商業(yè)價(jià)值的問題)、店鋪評級(jí)系統(tǒng)的搭建。
最后一章是介紹幾位京東技術(shù)大咖,看了過后除了跪拜還是跪拜,每個(gè)公司都有不少的技術(shù)大牛,希望自己以后也能成為其中的一員吧。
總結(jié)
以上是生活随笔為你收集整理的十年京东,十年技术发展—畅读《京东技术解密》的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android设备系统及屏幕分辨率统计信
- 下一篇: c语言if函数的应用