11.11,又被称为光棍节,似乎不少用户都会将自己的‘怨念’化为消费的欲望,又似乎只有消费的快感才能满足这特殊日子那‘孤独的灵魂’。但不知各位发觉没有,在这消费的节日,京东与平时浏览起来并无差异。我猜没有,毕竟多数人都沉浸在购物的快感和满足感当中。
回想前几年,在类似的日子里,服务器宕机、页面无法加载现象频频出现。而这类现象在今年却并未发生,所以不仅让我们产生一个疑问,在用户在疯狂的进行流畅浏览、搜索、下单的背后,究竟是什么样的设备与架构才能支撑住如此庞大的流量。为此我们特意采访京东营销研发部零售平台架构师与推荐搜索部总监,他们给出了以下答案。
营销研发部零售平台负责内容
对于大多用户来说,双十一当天关注最多的便是商品交易环节,在交易的背后还有一个最重要的环节,便是拆单与后续的生产,而这块的服务,全是由京东营销研发部零售平台负责。
在采访京东商城技术研发体系营销研发部零售平台架构师蒋佳涛时,他对这个平台职责进行了一个介绍,主要分为:
京东商城技术研发体系营销研发部零售平台架构师——蒋佳涛
1.从用户下单角度来说,用户在前台网站下了订单提交之后看到的就是交易体系这块,交易下单后的生产流程目前是零售平台订单生单体系负责。
2.用户在网上下单后,订单进行拆单,例如一个订单下了多个商品,订单会被拆成多个纸单。后续的生产(如211、411、限时达配送)订单履约时效上也是这个系统和外围系统进行配合,负责订单生产计划的流程。
3.当拆单过后会生成纸单,此时这个订单就真正生成了,这部分和交易有些关系,后面就进入了订单生产体系的流程。订单进入库房生产之前,还会对订单进行二次加工(如提供发票数据、面单数据、用户数据、如何定位、如何派车这些环节也在这个体系完成)。随后才会将相关信息下发到库房,库房人员进行生产。
4.当单子在库房真正进行生产时,前台用户想要看到订单(打包、配送信息)信息的回传。
5.当配送完成后,用户想要取消、退款。
此外生产体系的全景监控能够快速定位哪一个环节出了问题,对客服和用户都有一个良好的反馈。
从订单的下单到生产再到最后的完成,营销研发部零售平台主要参与拆单以及除了生产之外的其余部分的信息流转过程。
无需直接面对用户,限流辅助兄弟团队
这个流程虽然看似没有交易重要,但双十一的大量订单,也会让生产体系压力倍增。对于京东来说,拆分服务属于零级系统,单子一旦无法拆分,便意味着生产与配送无法完成,在可控因素下造成的货物无法及时送达,会让用户体验直线下降。
在采访蒋佳涛时得知:“这个体系与交易系统相同,从硬件研发、技术架构升级、团队管理等方面做了新的整合。6.18后便针对生产体系的系统进行重新架构梳理,把处理量级提升至亿万级订单处理量,达到这样一个量级的分布式订单处理系统。”
(关于交易系统部分的优化,详见为了双十一,你知道京东都做了什么吗? )
以往京东交易的文本数据,在下单过程时,文本就是用户的原始单,这块有大量数据要处理。现今使用了京东自主研发的文件处理系统,以前是放到Oracle数据库当中,但随着单量的增长,数据库大文本处理能力并不是很高,京东研发的GFS分布式文件处理系统,在高并发小文件处理能力很高,非常适合京东的应用场景(针对交易来说,虽然数量比较多,但大多都是10K左右的小文件)。
此外在数据库架构升级方面,从以前的MySQL、Oracle库调到Oracle库中进行分库。
之前介绍过的交易系统虽被比喻为一辆‘跑车’,但生产体系并不需要如此快速,生产作为一个主导系统能够对下游系统进行很好的限流、限速、泄洪,帮助兄弟团队缓解压力。
说起交易与订单,相必很多人都有所了解,但我们还忽略了一个重要性环节——搜索,没有搜索环节我们无法看到最近浏览、之前购买、关注过的商品等信息,而很多人认为只是一个搜索而已,对于双十一并没有太大影响,其实不然。
#p#
推荐搜索部的压力
首先我们要知道京东推荐搜索部门负责的内容是京东平台、移动平台、微信购物平台的搜索引擎和推荐系统。同时这几个平台搜索引擎都是由这个部门负责研发底层搜索导航以及类目导航服务。并且随着移动互联网时代的来临,移动端搜索量已经反超PC端,对于搜索部门来说更是一项挑战。
据京东商城技术研发体系推荐搜索部总监刘尚堃介绍:“双十一流量比较大,为了能够从容面对,此次主要做了扩容、接口降级。主要通过增加搜索引擎的服务器,按照6倍以上的量去预估与扩容。在采访中得知:“以目前来看双十一是6.18的一倍,根据6.18一倍的量去进行预估,加上考虑到攻击等不稳定因素,所以才会预估6倍这样一个量级。”
京东商城技术研发体系推荐搜索部总监刘尚堃
搜索引擎能够展示库存,如果库存过慢,这时便会库存进行一个展示的降级。此外如果搜索引擎遭受到了攻击,便会有针对iP和Cookie的限流。限流主要针对机器或是恶意攻击进行限流,对单个iP阀值设置很高,用户正常行为完全能够放过。限流也只是当搜索引擎出现异常,网络硬件比较高时才会开启,平时一直处于关闭状态。
之所以平时处于关闭状态也得力于平时的演练,当网络访问量较少时,采用PC去复制一些流量去测试最大限度的吞吐量,再通过分布式索引,保证了高峰时期的正常使用。
同时为了以防网络出现故障,京东特意做了一些调整,其中包括多机房容灾、多机房入口存活以及缓存调整。双十一不光是对性能和系统方面的考验,整个网络和网络架构因素也需要充分考虑进来,以保证在极端情况下,搜索引擎也能够存活。”
据京东商城技术研发体系推荐搜索部总监刘尚堃透露:“就算搜索引擎服务全部挂掉,也会有一套兜底KV服务,将所有的类目和关键词97%以上进行KV缓存。”
PC与移动端的两面优化
上述也说过,移动互联网时代,移动端带来的流量已经不容小觑,所以在保证搜索引擎能够存活的前提下,移动端与PC端的优化也成了重中之重,一个人性化与美观的界面才能够捕获用户的放心。
但移动端又有一个天生的弊端,便是屏幕展示有限,所以京东做了一些个性化的调整,如针对地域也会做一些个性化的搜索,不过双十一期间,个性化耗费的性能比较高,并没有进行开启。据透露,这部分会在双十一之后投入使用。
PC端也优化了个性化搜索,比如用户最近浏览、之前购买、关注过的商品在排序方面会有一些基于用户行为、实施偏好的调整。未来京东还会考虑基于社交关系的调整,例如微信社交关系链的数据使用(朋友,以及朋友的朋友都购买过什么会有标注)。
虽然移动端调用了搜索后台,但移动端会有一些工具干预,跟PC端搜索结果部分会有差异,运营人员会在移动端排序结果方面有一些处理。
这些个性化搜索的引入,全部归功于用户所有搜索行为、在全站的行为数据都会做成用户的长期偏好和实施偏好,每千次搜索产生的GMV以及搜索的用户转化率,使用搜索下单的UV除以使用搜索的UV数值以及首页点击率为判定标准。同时搜索后的一系列点击也会影响后续的商品排序,做成点击预测和CTR、CBR预测。
此外针对标类(京东自营为主的产品,标类有明确的规格,例如三星系列笔记本电脑)和非标类(第三方商家的商品,如钱包、鞋帽、礼品主要以开放平台为主)的排名搜索引擎均是同等对待。
和交易部门相同,京东营销研发部零售平台与推荐搜索部唯一的担心依旧是怕流量不够多。而能够让内部能够从容应对双十一的背后,全依赖于6.18之后的软硬件两个维度的备战,可以说相比去年,无论在系统架构方面还是赢家方面以及团队方面,都进行了全面升级。所以这时不禁会让我们产生一个遐想,明年的双十一,京东内部又将有什么样的升级以及解决方案来给我们进行分享,想想似乎都有些小期待呢。