京东商城技术揭秘:.NET与Java博弈

时间:2022-04-30 21:07:25

春运期间,铁道部的现任老大12306网站在面对日均10亿多次的点击量时,频繁瘫痪,给我们带来的惨痛教训是,关键时刻不能掉链子,这也印证了科技是第一生产力。

  而说起中国自主经营式B2C网站的行业老大,京东商城在2011年第三季度京东商城创下了37.8%的市场占有率。2011年6月18日,京东商城6周年店庆当天订单量接近50万单、单日销售额超过2亿元,在中国电子商务市场创下单日销售量历史纪录。那么,面临如此大规模并发访问压力,京东商城采取了何种技术架构的B2C系统来支撑其运营呢?

  前端采用.NET技术架构

  说起京东商城,不得不提到它的掌门人,2011CCTV十大经济人物“刘强东”。刘强东毕业于中国人民大学,理科超强的他业余时间自学编程。在创立京东商城的早期,刘强东选用了最为熟悉的.NET,直到现在,京东商城的前端部分仍然沿用.NET技术架构。

  后端采用Java技术

  京东商城连续六年200%以上的增长率,并不能掩盖其背后隐含的技术难题。比如,在2011年11月1日京东商城的图书促销活动中,由于促销活动仅限时1个小时,消费者疯狂抢购导致服务器不堪重负,最终瘫痪。为平息消费者的抱怨,刘强东在微博上表示:“重搞活动,增加3倍服务器,活动时间不能低于3小时。”尽管刘强东的危机公关做得很到位,即使京东商城增加了三倍服务器,技术问题依旧没有解决。

  随后京东商城进行了技术构架调整,基于历史原因前端技术依然使用.NET技术开发并且进行了大规模的性能优化,将系统后台使用JAVA技术进行重构,暂时性的缓解了系统访问压力。

  据最新消息,京东商城已经投入了大量资金邀请国外的咨询公司做技术策略顾问,并开始大规模招聘JAVA研发人员,这一点从京东商城的“人才招聘”页面就可以看出。预计在未来不久京东商城将全面切换至JAVA架构了。

  团购采用PHP技术

  据团购导航网站团800最新统计,2011年国内团购市场交易总额达110亿元,比2010年实现了550%的增长;超过3亿人次“抱团”消费,而按全年平均折扣3.6折计算,团购为全国消费者共节省了超过190亿元的消费支出,比2010年多省了156亿元。

  看看上述这组数字,就不难想象京东商城对于团购的蛋糕是多么的垂涎欲滴。与众多团购网站一样,京东商城的团购频道采用了高效率的PHP技术。与其它语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户在一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统

  UI采用jQuery插件

  习惯网购的朋友都深有体会。大部分皇冠级淘宝卖家都是图片控。京东商城的放大图效果也是吸引消费者的法宝之一。京东商城产品展示页支持多图切换并放大代码,放大功能的核心代码为jQzoom,当把鼠标移到下边的小图上的时候,上边显示大图片,当把鼠标放到大图片上,右侧则出现鼠标对应地方的大图片,方便查看产品细节,比较适合网店产品展示。

  JQZoom 是一个JavaScript图像放大镜,内置在流行的jQuery JavaScript框架顶部。jQzoom 功能非常强大,操作较为简单。支持标准模式、反转模式、无镜头、无标题的放大,并可以自定义jQZoom的窗口位置和渐隐效果,更多信息,请查看http://tech.it168.com/a2012/0112/1302/000001302122.shtml

  今日,京东商城高调宣布招聘2万人。笔者查看了一下京东商城招聘页面,发现很多研发职位。这也从侧面回击了专业人士关于“京东商城大手笔在抢购市场上烧钱,但其物流和后台系统技术上却没有跟上脚步”的质疑。