“双11”电商技术大考,京东能顶住吗?
为了应对双十一,京东此前已经做了约1500个技术演练,京东高级副总裁、研发体系负责人张晨透露:“每一次演练都要求出现的问题在60秒内解决问题。”而事实上,从618到双十一,不仅是销售的狂欢,更是考验电商平台各种技术的时刻,“618是技术小考,双十一才是大考”,张晨这样总结。
在京东,技术像影子一样紧密跟随着业务:秒杀时的突发访问,京东预留了20倍的流量,而在普通互联网平台上,忽然多了3倍的流量都倍感压力;“诺亚方舟计划”,是基础的底层架构,京东正逐步完成新数据中心的迁移,给在其上跑的业务铺上“新高速路”;年初开始的“京东大脑”计划,让这个平台上无论是卖家还是买家精准对接,改善用户体验的同时,提升效率。
技术方面的变化与京东今年的发展状态相对应。数据显示,京东集团2015年第一季度营收为366亿元人民币,同比增加62%;阿里巴巴公布的2015年第一季度成绩数据显示,其收入达174.25亿元人民币,较上年同期增加45%;京东第一季度GMV(平台交易总额)是878亿元,同比增加 99%,而阿里公布的第一季度GMV是京东的六倍多,达到6001亿元,同比增加为40%。
业内人士分析:“虽然在绝对值上,第一季度京东的GMV仅为阿里的14.6%,但以如今的增加速度看,京东会在未来进一步减少与阿里的差距。”
业务增长背后必然要有IT技术进步的支撑,而这次保障京东双11网络顺畅的是以下这三个杀手锏:
1
诺亚方舟计划
随着业务的发展,京东原有的数据中心里机器越来越多,机房分散在各处,这给整合资源带来了不必要的耗损。今年春节前后,京东启动了诺亚方舟计划,逐步把分散的数据中心集中和迁移到一起。
京东集团京东云平台首席架构师、系统技术部负责人刘海锋透露:“在新的数据中心里,有非常大的规模集群,对外业务交流有将近10万级别的 Docker的体系识别,能承担100%的流量。”今年的双十一在数据中心里完成百分之百的业务和流量,至于迁移过来的业务,预先不需要严格的划分,其策略是粗放地提供,根据使用的情况、流量、资源占用然后再作调整,达到各业务之间的资源分配更合理。
新数据中心具备了快速的自动配备资源的能力,以秒杀为例,一个按钮便可实现资源配备,秒杀完成后,资源也能立即回归原位。刘海峰透露,秒杀时事先估算流量的准确性并不高,这时也需人工辅助机器做及时调配,而对那些有规律的业务,在线图片、订单、商品页面等,对其流量有预测,则完全实现机器化调配。
2
多中心布局
如果说诺亚方舟修建的是高速公路,在其上进行数据的存取,京东开启了多中心布局。这样的设计也是基于猛增的流量,据京东商城平台研发部交易平台总监王晓钟透露,往年的618和双十一都靠一个机房做起来,今年的流量是往年的几倍,“多中心的一个含义是交易和流量同时分发到多个中心备份。”
整个交易从数据层面来说,可以分为用户数据和商家数据,用户数据有订单数据和购物车数据,商家数据包括商品、促销和库存数据。京东根据数据性质的不同设置了热备中心和冷备中心,据了解,这样做的好处有两点,其一是吞吐量提升了一倍,其二是如果发生单边数据丢失,或者数据突然不写入等情况发生,则通过其它机房替换。
所谓冷数据是指访问较多的数据,反之则是热数据。据了解,京东的商品量大概有几个亿左右,常访问到的就进入热备集群,几乎不访问的就进行冷备,这样其实在冷备集群里是没有流量的。但冷备需要支出软件成本,好比一百台机器存着不用,是一个很大的成本。
在软件成本上热备比冷备低,但是热备具有高可用性,且需要非常稳定的运作。热备最大的挑战在于软件架构,王晓忠总结,热备需要解决三个方面的问题:第一数据不一致,写数据如果是热备,两边的数据怎么保证一致是很大问题;第二集群规模也是一个问题,冷备可以做一个小规模,热备集群规模要大得多,当时软件架构不成熟,对于京东交易系统来说,它是一个慢慢发展的过程,不大可能一步到位;第三,随着交易量的增大,对线上高可用的要求也不一样。随着京东交易规模的增大,订单量也在迅速增长,对整个商城的影响还是挺大的,所以需求的剧增,我们的架构就跟着不同的系统要求做不同的变化。
目前在京东平台上出现多种业务,但在王晓忠那里都归结为数据,他说多中心交易除了多做几个数据中心写入和备份数据外,每个中心的内部还要进行详细的切分。以交易系统为例,最担心的是突发流量,这时数据中心就要判断流量是否正常,异常流量又被判断为特别异常型,例如遇到竞争对手捣乱或者黑客攻击,京东第一时间屏蔽这样的账号,甚至封号。还有另外一种异常流量便是类似于秒杀这样的交易,今年618,京东推出6.18元买某件商品,这时会出现正常的异常流量,对于电商交易系统来说,对害怕的是出现这种突发流量,所以在今年双十一,京东设计峰值在20倍,王晓忠透露:“按照历史的经验,峰值到20倍很少能突破。”
3
京东大脑计划
今年年初,京东开启了京东大脑计划,其目的是为了提高平台上的运作效率,于用户来说,能精确找到自己需要和潜在需要的商品,对商家而言,则是有了商品能找到精准的用户推送。
京东集团研发部的研发总监杨光信认为,之所以把这个计划总结为京东大脑,是想用人工智能或者AI技术去提高京东的运营效率,“京东从数据层面已经做好了准备。”杨光信总结,京东有着多数互联网公司羡慕的数据,“京东所有的用户数据都是用户花钱留下的,真正代表用户意图或者是消费行为的各个方面,此其一,其二是京东平台上的交易很少有刷单的情形,因此数据质量是有保证的。”
自成立以来,京东积累了十几年的用户数据,这上面可以发挥的余地比较大,例如在商品推送上,京东大脑拟做到千人千面,其交易是以用户的家庭为单位进行画像,假如追踪到某个账户在频繁购买纸尿裤,婴儿用品,就可以判断这是一个有小孩的家庭,以后商品的推送是关联知识图谱,做更加深度的发掘。
地理坐标也是推送时考虑的因素。在北京地区,京东通过检测发现,望京地区对于日韩品牌电饭煲的购买异常活跃,而在南五环的黄村地区,用户则喜欢买国产手机的低端产品,在今年iPhone6s上市期间,朝阳区的某些用户比较积极……
杨光信透露,这样的关联对于快速发货具有重要意义,可以预先把一些热销商品提前放到站点,该地区用户点击购买,便可以第一时间发货,及时送到,这是他从雅虎北研来到京东一直在将雅虎的技术与京东业务进行紧密结合的尝试。