从京东技术演进看互联网企业的成长历程
活動地址:http://blog.csdn.net/blogdevteam/article/details/41842837
一、網(wǎng)站開發(fā)技術(shù)的選擇
從《京東技術(shù)解密》這本書我了解到,京東商城網(wǎng)站經(jīng)歷了ASP、.NET、Java三個階段。但是我不清楚京東為什么沒有選擇PHP這個網(wǎng)站開發(fā)的首選語言,而是選擇了ASP。我想過程可能是這個樣子的。
首先在京東商城剛成立不久的那個時期,非常流行ASP技術(shù)(事實上前兩年還有不少網(wǎng)站是基于ASP的),而PHP在國內(nèi)還不是非常流行,掌握PHP的高手不是很多。.NET這邊也是剛剛起步不久,還在快速發(fā)展時期。Java的開發(fā)成本又比較高。而當時的京東商城也不像現(xiàn)在這樣的規(guī)模,也只是剛剛起步。因此從招聘開發(fā)人員、開發(fā)成本等等各個方面來講,京東商城一開始選擇ASP技術(shù)是明智的選擇。但是隨著網(wǎng)站用戶規(guī)模的不斷擴大,對網(wǎng)站的功能要求越來越多,單純的ASP開發(fā)已經(jīng)力不從心。這時候必須要引入更先進的技術(shù),用模塊化的方法進行開發(fā),這時候擺在面前的選擇就只有.NET和Java了。相對于Java,.NET的開發(fā)效率不是一般的高,同樣的,Java開發(fā)成本又高,在.NET技術(shù)夠用的情況下,還是優(yōu)先選擇.NET。于是乎在網(wǎng)站開發(fā)技術(shù)上面進行了第一次升級,由ASP轉(zhuǎn)向了.NET。
由于.NET只能在Windows操作系統(tǒng)上面跑,隨著用戶規(guī)模的指數(shù)級上升,特別是在大數(shù)據(jù)的背景之下,原先的技術(shù)架構(gòu)已經(jīng)不能夠適應(yīng)發(fā)展的需要。特別是Windows的商業(yè)授權(quán)的費用,是一筆非常大的開銷,使用開源技術(shù)會省掉很多money。更重要的是開源技術(shù)有一整套的成熟的解決方案,而且彼此間互相兼容。于是乎京東進行了第二次升級,由.NET轉(zhuǎn)向了Java。
二、從組織架構(gòu)看企業(yè)管理
從試讀部分,我注意到了打造最有影響力的技術(shù)團隊的序。目前京東團隊有4000多人,京東是如何對這4000人進行管理的呢?李大學(xué)給了我們答案。
目前研發(fā)體系分為9大模塊和4個平臺。
9大模塊:
1、云平臺:解決頂層的技術(shù)架構(gòu)和提供基礎(chǔ)設(shè)施
2、運維:提供技術(shù)支持的平臺
3、營銷研發(fā)部:網(wǎng)上營銷
4、運營研發(fā)部:針對訂單生產(chǎn)體系研發(fā)系統(tǒng)
5、職能研發(fā)部:內(nèi)部信息化管理
6、大數(shù)據(jù)部:提供統(tǒng)一的大數(shù)據(jù)技術(shù)平臺,數(shù)據(jù)平臺基于Hadoop
7、移動部:負責移動客戶端的研發(fā)
8、研究院:負責全國京東的5大研究院的建設(shè)
9、技術(shù)研發(fā)管理部:主要負責管理體系的建設(shè)
4個平臺:
1、技術(shù)平臺:基礎(chǔ)云平臺,支撐所有的應(yīng)用
2、大數(shù)據(jù)平臺:大數(shù)據(jù)處理
3、電商開發(fā)API平臺:提供API服務(wù),連接各個系統(tǒng)
4、應(yīng)用平臺:位網(wǎng)站、移動客戶端等應(yīng)用提供支撐
從上面這些內(nèi)容,可以看出京東為應(yīng)對市場激烈的競爭而在管理上面所做出的調(diào)整。
三、京東是如何應(yīng)對大數(shù)據(jù)時代挑戰(zhàn)的
首先他們用基于Hadoop的大數(shù)據(jù)標配技術(shù)來升級原先的Oracle小型機方案,“由40臺機器搭建的第一版集群,相較于Oracle小型機,性能明顯提升,讓我們第一次體會到分布式的威力”。經(jīng)過不斷的探索和實踐,從MySQL數(shù)據(jù)倉庫完成遷移到Oracle數(shù)據(jù)倉庫遷移再最終遷移到京東自主研發(fā)的JDW2.0數(shù)據(jù)倉庫,京東大數(shù)據(jù)平臺逐步走向成熟。
一般公司在引入新技術(shù)的時候,都會先直接使用開源的方案,等到成熟再基于它做二次開發(fā),甚至是完全自主開發(fā)。京東也是這樣,他們在使用基于Google的Hadoop分布式技術(shù)之后,通過深入學(xué)習,在本地化部署過程中實現(xiàn)了技術(shù)微創(chuàng)新:
1、定向開發(fā),支持基于HDFS創(chuàng)建索引;
2、定向改造,在Map層面合并小文件,節(jié)省資源消耗;
3、支持動態(tài)調(diào)配資源隊列;
4、對任務(wù)運行時間和HDFS的讀寫量支持通過參數(shù)進行控制;
5、自主開發(fā)適用于京東大數(shù)據(jù)服務(wù)平臺的計算函數(shù);
6、優(yōu)化并提升Hadoop存儲性能,支持更多類型的數(shù)據(jù)存儲格式;
京東大數(shù)據(jù)產(chǎn)品:
1、調(diào)度平臺
2、數(shù)據(jù)集成開發(fā)平臺
3、數(shù)據(jù)知識管理平臺
4、京東分析師
5、數(shù)據(jù)挖掘平臺
6、數(shù)據(jù)質(zhì)量監(jiān)控平臺
海量數(shù)據(jù)實時查詢技術(shù)框架:
整個技術(shù)框架中攘括的技術(shù)點包括:Socket通信、SQL語法解析、Cache集群、并行計算集群、索引、列存儲、元數(shù)據(jù)。
1、Client:是一個基于命令行的客戶端,用于接收用戶輸入、執(zhí)行SQL、查看返回結(jié)果,了解執(zhí)行狀況的窗口;
2、瞿塘:負責解析SQL、生產(chǎn)查詢計劃、執(zhí)行數(shù)據(jù)計算,計算結(jié)果合并;
3、巫峽:負責索引構(gòu)建、查詢、刪除和優(yōu)化;
4、西陵:負責數(shù)據(jù)存儲、備份;
5、MetaStore:負責元數(shù)據(jù)管理。
基于分布式架構(gòu)的聯(lián)機分析處理(OLAP)技術(shù):
Visualization是一套適合京東業(yè)務(wù)使用方式的前端可視化框架。
烏江是指標維度映射管理、權(quán)限管理、CUBE創(chuàng)建以及數(shù)據(jù)匯總和緩存的服務(wù)系統(tǒng)。其中Parser是邏輯語句的解析模塊,Configure負責指標維度的管理、權(quán)限管理、邏輯CUBE的管理,用戶可以靈活的調(diào)整,使適應(yīng)業(yè)務(wù)靈活多變性。Aggregate Manager是聚合邏輯處理模塊。
三峽是一個基于分布式的,支持以SQL的形式提供數(shù)據(jù)查詢、針對億級數(shù)據(jù)支持秒級響應(yīng),資源占用率較低的海量數(shù)據(jù)實時查詢技術(shù)框架。
分布式數(shù)據(jù)存儲集群是具有可以任意修改和擴展指標和維度的數(shù)據(jù)存儲格式的數(shù)據(jù)集群。
海量日志數(shù)據(jù)分析處理技術(shù):
HA Proxy保證了在大數(shù)據(jù)量的情況下,采用負載均衡的分發(fā)機制,將日志的寫請求對應(yīng)到不同的日志服務(wù)器。在數(shù)據(jù)收集層面,采用了專用的日志服務(wù)器,將日志寫請求轉(zhuǎn)換為標準的文件寫請求。
數(shù)據(jù)收集完成后,將這些日志文件同步到分布式數(shù)據(jù)處理平臺。在分布式數(shù)據(jù)處理平臺上,完成數(shù)據(jù)清洗,將日志加載成標準的范式定義的數(shù)據(jù)。
———————————————————————————————————————————————————————————————
《京東技術(shù)解密》并不是一本技術(shù)書,這本書的定位是“電商網(wǎng)站/技術(shù)人文”,即講述了京東商城從起步到發(fā)展壯大,從30人技術(shù)團隊到如今4000人技術(shù)團隊規(guī)模的發(fā)展歷程。通過這本書我們也可以看到,京東人在建設(shè)系統(tǒng)的過程中經(jīng)歷了一些挫折,但是他們從一點一滴做起,不斷的堅持才走到了今天。這種契而不舍的精神,著實讓我深受感動。
總結(jié)
以上是生活随笔為你收集整理的从京东技术演进看互联网企业的成长历程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工作到什么状态,就可以离职了?
- 下一篇: UE4 粒子矢量场绘制(Maya2016