京東云峰:電商移動(dòng)云平臺(tái)背后的技術(shù)
業(yè)內(nèi)專家對(duì)京東云的評(píng)價(jià)是“要聚焦電子商務(wù),自成一系的云應(yīng)用平臺(tái)”。
這與“做第一電商云”的京東云所確定的方向相吻合。京東云,擁有六個(gè)子平臺(tái),覆蓋了開放接口、托管云、應(yīng)用開發(fā)、移動(dòng)開發(fā)和社區(qū)互動(dòng)以及交易服務(wù)等,提供的是一站式的電商云服務(wù)。而為了更加透徹地了解京東云,CSDN云計(jì)算特別采訪到了京東云峰負(fù)責(zé)人、京東研發(fā)部云平臺(tái)移動(dòng)云研發(fā)總監(jiān)——曾科。
京東云峰負(fù)責(zé)人、京東研發(fā)部云平臺(tái)移動(dòng)云研發(fā)總監(jiān) 曾科
云峰,完整的移動(dòng)“小”生態(tài)
京東云,是一站式的電商云。云峰,是京東的移動(dòng)云平臺(tái)。
在曾科看來,云鼎、云擎、云峰、云匯等所有子平臺(tái)相互關(guān)聯(lián),組成了京東云為電商服務(wù)的一體化云平臺(tái)。對(duì)用戶而言,這些平臺(tái)之間,只需要一個(gè)賬戶來登陸。而云峰,依托云鼎、云擎、云匯,通過大量的計(jì)算與存儲(chǔ)的資源與互動(dòng)社區(qū),是免費(fèi)對(duì)移動(dòng)應(yīng)用開發(fā)者開放的子平臺(tái)。
“云峰目前提供了云測(cè)試、云推送、云分析、短地址等四大服務(wù),后續(xù)還增加代碼托管、自動(dòng)編譯、打包以及應(yīng)用發(fā)布推廣等服務(wù)。在云峰上,我們希望可以為移動(dòng)開發(fā)者提供一個(gè)完整的生態(tài)服務(wù)。”曾科對(duì)CSDN云計(jì)算頻道說。
這里的開發(fā)者有三類,一是擁有開發(fā)能力的POP商家,二是服務(wù)廣大電商的ISV們,三是重要的獨(dú)立力量——第三方開發(fā)者(如個(gè)人開發(fā)者等)。“云峰不會(huì)直接面對(duì)最終用戶,我們的定位是為開發(fā)者提供移動(dòng)云平臺(tái)。”曾科如此表示。
事實(shí)上,云峰所覆蓋的移動(dòng)云平臺(tái)的“小”生態(tài)系統(tǒng)已經(jīng)開始聚攏。中國(guó)電子商務(wù)研究中心發(fā)布的《2012年度中國(guó)網(wǎng)絡(luò)零售市場(chǎng)數(shù)據(jù)監(jiān)測(cè)報(bào)告》顯示,截至2012年12月中國(guó)B2C網(wǎng)絡(luò)零售市場(chǎng)(包括平臺(tái)式與自主銷售式)上,京東商城名列第二。這一數(shù)字下,無論是移動(dòng)用戶還是POP商家數(shù)量都不會(huì)少,而這兩者自然也催生了第三方如ISV和獨(dú)立開發(fā)者的力量。這正是曾科的底氣所在。“中國(guó)智能手機(jī)的用戶群一天一個(gè)數(shù)字,京東本身就已經(jīng)有了6000萬以上的移動(dòng)用戶,還有團(tuán)購客戶端、電子書EBook,數(shù)字音樂,AppStore和云盤等產(chǎn)品,這些都可以直接(有些會(huì)在未來)接入云峰平臺(tái)。再加上ISV和開發(fā)者,我們已經(jīng)形成了基于移動(dòng)應(yīng)用的緊密紐帶。”
開源優(yōu)化+自主研發(fā),走成熟的路
云峰的技術(shù)理念是開源優(yōu)化+自主研發(fā),走成熟的路。

京東電商云架構(gòu)圖
目前云峰中已經(jīng)推出以下四種服務(wù):
云推送:通過服務(wù)器與客戶端通訊,實(shí)現(xiàn)實(shí)時(shí)的廣播通知、應(yīng)用消息的送達(dá),包括廣播、組播和點(diǎn)播模式,發(fā)送文字、圖片以及聲音等多媒體內(nèi)容;支持Android,低電量、低流量消耗,消息通知及時(shí)送達(dá);支持推送工具推送和API接口調(diào)用。
短地址:采用簽名算法,提供長(zhǎng)域名到短域名的雙向轉(zhuǎn)換,方便移動(dòng)設(shè)備、微博、郵件中使用;關(guān)鍵是更短的域名,比如3.cn,更短的跳轉(zhuǎn)時(shí)間。
云分析:通過客戶端對(duì)用戶操作的記錄,實(shí)現(xiàn)對(duì)用戶行為數(shù)據(jù)、路徑與終端數(shù)據(jù)的上報(bào)和分析,提供實(shí)時(shí)的移動(dòng)應(yīng)用統(tǒng)計(jì)分析服務(wù),幫助開發(fā)商調(diào)整運(yùn)營(yíng)策略,提高用戶體驗(yàn)。包括活躍用戶數(shù)、區(qū)域分布、渠道、版本、終端設(shè)備、啟動(dòng)次數(shù)、使用頻率與時(shí)長(zhǎng)、頁面訪問數(shù)據(jù)等。
云測(cè)試:擺脫人工測(cè)試,實(shí)現(xiàn)真機(jī)自動(dòng)化測(cè)試,免去測(cè)試終端的購買、租賃等諸費(fèi)用開銷。
這其中,技術(shù)層面,有開源優(yōu)化也有自主研發(fā),亮點(diǎn)很多。
比如移動(dòng)云測(cè)試基于圖像識(shí)別算法,通過在服務(wù)器端的腳本錄制、解析和執(zhí)行,真機(jī)測(cè)試,最終將功能測(cè)試、性能測(cè)試和兼容性測(cè)試等結(jié)果(報(bào)表、截圖等)反饋給開發(fā)者。而針對(duì)一些特殊需求,還會(huì)做建議修改。曾科說:“目前業(yè)界更多是通過控件識(shí)別算法來完成測(cè)試的,但是往往過于依賴Android和iOS操作系統(tǒng),也會(huì)受到一定限制,而圖像識(shí)別算法天然就跨平臺(tái),表現(xiàn)很優(yōu)秀。”
再如支持在線腳本錄入。由于在線錄入資源有限,排隊(duì)等候現(xiàn)象嚴(yán)重,業(yè)內(nèi)一般是在線錄入+輔助客戶端錄入。但是不同平臺(tái)的客戶端安裝、卸載、升級(jí)維護(hù)都很麻煩,所以借助京東云的整體平臺(tái)優(yōu)勢(shì),云峰可以只支持在線錄入,用戶在非常短的等待時(shí)間內(nèi)就可以完成使用。
以及云推送。在對(duì)比數(shù)個(gè)方案之后,云峰團(tuán)隊(duì)最后選擇了使用GO語言來自己開發(fā),GO語言源自C語言,可以媲美C,或者C++,在性能、安全性、并發(fā)性以及后續(xù)的優(yōu)化空間等方面優(yōu)勢(shì)很明顯。
除此以外,云分析不僅做了圖形對(duì)比,并且對(duì)明細(xì)數(shù)據(jù)進(jìn)行了對(duì)比,比如一款應(yīng)用在iOS和Android上的對(duì)比分析等;短地址不僅支持TCP和HTTP的長(zhǎng)鏈接,還支持HTTP CallBack,這樣給了用戶多項(xiàng)選擇,可以自由選擇,相對(duì)接入門檻也會(huì)更低一些。
曾科和云計(jì)算可以分享4個(gè)數(shù)字:
1.相對(duì)業(yè)內(nèi)一般100KB的標(biāo)準(zhǔn),云推送SDK客戶端安裝包只有40KB,非常小;
2.由于移動(dòng)端流量的數(shù)據(jù)很敏感,云推送的月空載流量控制是在0.3M以內(nèi),這也遠(yuǎn)低于業(yè)內(nèi)1-1.2M之間的指標(biāo);
3.云分析日志流量支持壓縮,單條日志在0.3K左右,多條日志會(huì)通過優(yōu)化算法進(jìn)一步降低,從而節(jié)省流量;
4.短地址不僅可以做到最短,而且在跳轉(zhuǎn)時(shí)間上也可以控制在10毫秒左右,做到最短。
顯然,為了達(dá)到這些細(xì)節(jié)的完善和優(yōu)化,技術(shù)團(tuán)隊(duì)做出了巨大的努力。“從最初技術(shù)選型到中間研發(fā),做了大量?jī)?yōu)化工作。比如云測(cè)試中的圖像識(shí)別算法需要不斷優(yōu)化,準(zhǔn)確率從80%、85%、90%......不斷提高。再如區(qū)域統(tǒng)計(jì)算法是基于自主研發(fā)IP庫的,目前準(zhǔn)確率可到96%,在整個(gè)行業(yè)中都是領(lǐng)先的。這些后續(xù)還需要繼續(xù)優(yōu)化。”
談到技術(shù)路線,曾科很坦率:“不僅是我們,任何一個(gè)云研發(fā)平臺(tái)的團(tuán)隊(duì),都會(huì)盡量使用成熟的開源方案。比如OCR引擎、Hadoop、HBase、MongoDB、Redis等開源技術(shù)。而在核心產(chǎn)品方面,則會(huì)從頭開始自主研發(fā)。”
讓創(chuàng)新變成實(shí)在的創(chuàng)造力
目前,京東云服務(wù)已經(jīng)面向公眾開放,雖然目前還屬于邀請(qǐng)制,但總體數(shù)量比較大。目前實(shí)際登陸用戶每周的增長(zhǎng)率都在100%,勢(shì)頭很快。而隨著大量用戶的反饋意見或建議,曾科表示:“在未來3-5個(gè)月中,還將繼續(xù)完善和優(yōu)化現(xiàn)有系統(tǒng)。比如云峰方面,近期針對(duì)iOS設(shè)備支持會(huì)加大力度。未來還將有更多令人激動(dòng)的新功能出現(xiàn),比如在線云調(diào)試、個(gè)性化消息推送、個(gè)性化域名等,要結(jié)合電商業(yè)務(wù)做具有京東特色的推送,如針對(duì)商品的訂單、交易、數(shù)據(jù)等服務(wù)。而針對(duì)開發(fā)者的需求和反饋,從研發(fā)到應(yīng)用發(fā)布、推廣也會(huì)逐步形成生態(tài)的閉環(huán)。”
創(chuàng)新的背后,是京東云平臺(tái)的幾百號(hào)研發(fā)人員。他們組成了一個(gè)天然的資源池,共同在開發(fā)云鼎、云擎、云峰等平臺(tái),這些平臺(tái)的上線時(shí)間幾乎同步。由此,研發(fā)團(tuán)隊(duì)面臨的機(jī)遇很大,但挑戰(zhàn)同樣大。最重要的一方面就是必須有足夠的成熟度,要有成熟的心態(tài)克服困難。
曾科對(duì)記者說:“云峰這邊包含產(chǎn)品規(guī)劃、設(shè)計(jì)、技術(shù)架構(gòu)設(shè)計(jì)、Web前后臺(tái)、服務(wù)研發(fā)、服務(wù)器API研發(fā)以及Android和iOS端的研發(fā),運(yùn)營(yíng)推廣等組員。京東云平臺(tái)比較完整,希望有更多的技術(shù)伙伴可以加入我們。”
曾科在互聯(lián)網(wǎng)行業(yè)已經(jīng)工作13年,不僅對(duì)云存儲(chǔ)和高性能網(wǎng)站架構(gòu)方面都熟悉(分布式文件系統(tǒng)DFS、P2SP技術(shù)專家),同時(shí)對(duì)移動(dòng)開發(fā)方面如LBS、網(wǎng)盤移動(dòng)端、移動(dòng)插件等也很有經(jīng)驗(yàn)。在他看來,核心技術(shù)力量需要對(duì)新生技術(shù)有所帶動(dòng),而后者活躍的創(chuàng)造力也會(huì)給前者帶來收獲。技術(shù)團(tuán)隊(duì)的根本目標(biāo)是,讓創(chuàng)新變成實(shí)在的創(chuàng)造力。
采訪后記:
建設(shè)新城市遠(yuǎn)比改造舊城市要容易。亞馬遜和阿里集團(tuán)都是先有了自己的系統(tǒng),然后才開放部分基礎(chǔ)資源給到云計(jì)算服務(wù),但其本質(zhì)上都是雙系統(tǒng)架構(gòu)。而京東不存在這個(gè)歷史包袱。京東公有云服務(wù)和京東私有云已有統(tǒng)一規(guī)劃,技術(shù)上很多模塊是互用和耦合的。期待,在不久的將來,這些一線實(shí)踐經(jīng)驗(yàn)可以更好地分享出來,幫助云計(jì)算研發(fā)人員更好地成長(zhǎng)。