京东商城交易平台系统架构变迁

个人简介 京东商城交易平台副总监 负责交易平台的架构和管理工作。11年加入京东,主导架构设计了京东商城的交易平台系统。 历经2012~2014年3次6.18和3次双11大促销,根据交易业务的高并发、大流量特点,数次对交易系统进行架构升级,确保了这3年间整个交易系统的稳定和高可用。

全球架构师峰会(International Architect Summit,下简称ArchSummit)是由InfoQ中文站主办的一次全球性架构师峰会。ArchSummit专门针对架构师人群,讲述与架构和架构师相关的各方面趋势、技术和案例。这也是继QCon之后,InfoQ中文站主办的又一次高端技术盛会。

   

1. 大家好,我现在在ArchSummit北京2014大会现场,今天很高兴能邀请到京东商城交易平台副总监王晓钟先生接受我们的采访,先请王总跟大家做一下自我介绍。

王晓钟:大家好,我是京东商城交易平台的副总监,主要负责京东商城的交易平台整个系统的系统架构和一些日常的管理工作,我是2011年10月份加入京东商城的,第一年是作为架构师加入京东商城的,然后带领整个交易组做整个商城的交易平台的架构升级,当时主要就是从C#的版本架构翻新到Java版本。第二年开始我就已经转向管理岗,但是在京东商城,管理和技术是密不可分的。随后的2013年、2014年,4次618和双十一的大促销期间,我带领团队完成了整个商城的交易平台的备战。4次大促期间,整个交易系统非常稳定,整个交易平台在2012年开始日常系统有时候会不稳定,但是发展到2013年、2014年,这两年交易平台在日常的系统运行就非常平稳了。

   

2. 我们看到刚出版的《京东技术解密》这本书里,您被称为是618之盾,您在最初接触交易系统的时候,有哪些需要解决的问题呢?

王晓钟:我是2011年10月份加入的,当时交易系统有两个很大的问题,第一个问题是当时面临着C#向Java的转型,这是一点。第二点,当时C#的交易系统不支持水平扩展,我们2011年当时不是有一个段子吗,说老刘要加几百台机器,其实当时就算加了机器也没什么用,因为当时是整个交易系统的架构没法满足需求。

   

3. 从C#迁移到Java,这个工作现在进展怎么样?

王晓钟:这个工作早就完成了,因为给业界留的印象太深了,感觉京东商城还有一部分是用C#系统,其实这个工作早在2013年就已经完成了。京东商城2011年双十一大促系统崩溃了一次,但是2012年、2013年、2014年这三年6次618和双十一大促销期间,系统都没有什么问题。从2012年开始主交易系统已经完全转移成Java了,2013年所有的子系统也都已经转成了Java。C#已经成为历史了。

   

4. 当时迁移的时候感觉最大的挑战在哪里?

王晓钟:迁移最大的挑战有两点。第一,迁移是在完全不停止业务的情况下,管理上的难度特别大,同样一个业务需求,需要在C#版上做一版,在Java版上又做一版,这是一个非常大的挑战,这是管理维度的。另外一个挑战就是技术上的挑战,因为当时的C#版的技术架构太不合理,不能支持水平扩展,而且当时的服务化只完成了一半,没有进行深入服务化。技术上我们新设计出来的Java的架构,以前都是理论的,现在要用于实战,所以大家就感觉技术方向各方面还是有些犹豫,后来经过线上实际流量的压测以及线上流量的磨合,发现设计还是非常合理的。大促都扛住了,而且平时性能也非常稳定。

   

5. 今年的618和双十一都已经是平稳渡过了,在准备这方面有什么经验可以分享的吗?

王晓钟:因为今年的准备基本上就是两个方面。第一,经过2012年、2013年两年的事实大促的经验和洗礼,整个团队的技术架构、技术水平和管理水平,基本上比较成熟了,今年我们就在原有的基础上,针对两点做了一些特殊的准备。第一个是目前互联网上有很多大量的恶意流量,包括我们做大促期间那些机器人,恶意流量特别大,所以针对恶意流量,所有暴露在外网的请求和调用,我们都做了一些针对性特别强的限制和优化,这是其一。第二是在网络层面,一个是我们和运营商的网络入口,还有几个机房之间的专线,另外就是机房内部的一些核心交换机,像硬件和软件相结合的一些升级。基本上就是这两点。

   

6. 应对这些挑战接下来是怎么计划的?

王晓钟:下一年的挑战上,现在基本上整个交易平台整体的技术架构已经相对成熟,也就是说我们的架构、理论、实践、管理都比较成熟之后,下一步京东要做的就是在点上的突破。比如网络层面的突破,网络硬件层面的突破,运维方面的突破,还有内部底层存储的突破,以及前面使用的像Linux、Java虚拟机这些技术。未来的挑战就是为交易平台定制一些技术。

你可能感兴趣的:(京东商城交易平台系统架构变迁)