零点时刻的“全世界最贵代码”:这个中国独有的商业奇观正在进行怎样的技术长征?
年度订阅用户可加入科技英语学习社区,每周科技英语直播讲堂,详情查看“阅读原文”
在每一年的这一天,有一群程序员将获得“敲下全世界最贵的代码”的终极检验。那一天就是天猫双 11。
但事情慢慢发生了变化。每年双 11,支付宝都会组建一个技术保障团队。几年前,这个团队有上百名程序员。然而随着每年双 11 支付笔数和峰值屡创纪录,这个临时团队的人数却一直在减少。
“去年是 30 多个人,今年大概是十几个”,在近期的一次媒体沟通会上,蚂蚁金服副总裁、首席技术架构师胡喜透露。
图丨 2014年双11阿里办公区的夜景
对阿里来说,自 2009 年诞生的双 11 已经成为了一年一度的技术大考:当天,阿里的网络必须承载来自于世界各地数以亿计的用户所带来的巨大流量,当人们在感叹天猫双11销售额攀登的迅猛速度时,程序员们最关心则是随着零点时刻而来的的交易洪峰。
在那一刻,任何一个看起来微小的故障或者失误都有可能带来难以估量的损失。
所以,今年的天猫双 11,阿里又从何方神圣那借了“胆子”,仅凭十几名程序员就想把控上堪称世界奇观的交易洪流?
无论是在除夕夜里发微信红包,还是在雨雪天气中叫车,在出行高峰时预订酒店和机票,许多行业都开始习惯出现用户访问和购买高峰值这件事,但是习惯并不等于应对起来得心应手。
更不幸的是,电商本身的一些特质让其在高峰值这个“巨人”面前实在难以松懈:天猫双 11 期间,卖家和平台设置的各种促销政策层出不穷,交易规则的复杂度只增不减;商品库存数量需要保证及时准确,比如此前就曾出现过超卖的问题;另外,在天猫双 11 期间,用户的行为也会发生一些变化……
稍有差错,这些问题会在零点那一瞬间如泄闸洪水般涌现。毕竟,天猫双 11 成为一种世界级的场景,不仅在于惊人的交易额,更在于其提出的技术挑战:最大的困难是保障零点峰值的稳定性,具体到支付系统上,峰值考验的关键就是系统技术架构的能力。
在去年,天猫双 11 交易额达 1207 亿元,这个数字今年无疑还会再涨。相信对于大多数普通消费者而言,每一年的“天猫双 11 ”和上一年相比并没有太大不同,但是,对于技术人员来说,为了迎战这短时间内杀出来的上百亿资金,天猫双 11 逼着支付宝不停在底层技术架构上“革自己的命”。
比如说,2010 年对于支付宝技术就是一个拐点。那一年的峰值比此前番了三番,还是用传统型架构只能是死路一条。支付宝的技术团队分析了整个业界的架构,最终的答案是,他们的问题已经不是任何一个现有业界技术可以解决的。
他们最后寄希望于一种全新的对策——分布式“异地多活”的架构。这种分布式架构就像是拆掉了高端中央收银台,换成了分散在商场各个角落的无数小型计算器,每台计算器虽然不如单一中央收银台高端厉害,但个个都能记点帐,更重要的是,有一种统筹全局的力量为分散在各处的计算器设计了相互关联的逻辑关系,它们互为补充,互相备份,从全局上保证了运算可靠,因而任何单个计算器的故障,都不会影响整盘生意。这就是这种架构中最核心的云计算能力。
结果证明这个方向是对的。在满足支付宝系统同样稳定的前提下,这种架构极大地降低了对于成本的投入。
而今年的最大亮点在于,支付宝计划做“离在线混合部署”,我们可以把这项技术想象为一个强有力的“首席外援”。
事实上,天猫双 11 对阿里云大数据平台的技术挑战主要体现在两方面,一个是实时数据处理,另一个则是离线数据处理。前者包括日志数据和交易数据的实时采集、分发、计算,也就是我们常说的用户的在线交易,后者则是指每天的数据分析报告以及当日账表,这些数据最后会用作公司内部备案。
离在线混合部署,就是通过把离线和在线的数据打通,让性能较差的离线机房也能执行在线处理,最终保证每秒钟产生的数万笔交易能沿着手机和电脑流动起来。
也就是说,今年的天猫天猫双 11 交易高峰期,一部分交易将首次跑在临时“征用”来的存放和处理分析离线数据的服务器。“今年有 25% 是自有的,55% 在云上,20% 是离线资源。到明年,几乎是所有离线资源和在线资源融合在一起,从 IOE 的架构变成分布式架构,分布式架构还可以利用大数据的机房把所有机房资源可以放在一起”,蚂蚁金服首席技术架构师胡喜说。
图丨蚂蚁金服首席技术架构师胡喜
这么做的价值,一是大大降低了成本。如果不临时“征用”处理离线数据的服务器来提供计算资源,那就要专门为天猫天猫双11加购许多服务器。此外,这一技术除了能支持天猫双 11、春节红包等大促场景,它将来还能集合在蚂蚁金服金融云上,输出给有做大促需要的合作伙伴和客户,大大降低它们做大促的成本、提高效率。
但是,说是临时“征用”,但绝不仅仅是“征来就用”那么简单。因为处理离线数据和处理在线交易是完全不同的任务,这也决定了,处理离线数据和处理在线交易的服务器的配置差别是很大的,二者完全是两个不同的“容器”。
所以,如何在交易高峰期,以秒级的速度,把在线容器里的东西(各种软件、应用)瞬间转移到离线容器里? 这背后起到关键作用的是容器技术和统一资源调度的能力。事实上,无论容器是什么形状、什么材质,容器里的东西都能随时“搬家”,容器技术就相当于标准化改造,有了这个标准化改造的能力,各种配置不一、可以暂时放下手中的活伸出援手的服务器,都可以在各种大促场景派上用场,帮助疏通与分流。
图丨2016年双11的支付宝技术保障团队
据估算,离在线混部技术能为 2017 年天猫双 11 减少近两千台服务器的投入。
目前为止,蚂蚁金服金服仍然需要为每年的天猫双11支付保障做很多事情,但如果时间倒回到支付宝刚起步的时候,技术远没有今天那么受重视,原因很简单,不需要,没必要。
在创业之初,2004 年时,支付宝还是淘宝中的一个结算部门,淘宝的会计人员用两台电脑和一张 Excel 表就能进行结算。那时每天的交易金额是三位数,全天交易笔数只有十几笔,如果分摊到每秒钟,则接近于零。
淘宝第一次搞天猫双 11 大促是在 2009 年,那时,天猫双 11 还不像现在这样广为人知,所以 2009 年的交易量并不大。在此之前,支付宝也刚完成二代架构的升级改造。在二代架构做完之后,支付宝的技术团队感觉能解决的技术问题都已经解决了,很多人也认为未来系统也许就可以这样发展下去。
于是,在 2010 年天猫双 11 大促之前,支付宝的系统规划是按照每年增长 100% 余量预估的。即系统永远有一倍的余量,按照当时的估测,大家觉得一倍余量一定够用。退一步说,即使出现问题,也可以等到交易量增长到一定程度时再继续增加资源。
所以,当年的“抗洪小分队”采用的是简单粗暴的“人肉”云计算:天猫双 11 那一天,每个人看自己服务器的系统水位,出现问题吼一嗓子,哪里有空闲的资源调过来,后来容量又不够把一些非关键系统杀掉。因此,当天突如其来的巨大交易量让人措手不及。
值得一提的是,2010 年以前,支撑“天猫双 11 ”的是传统金融机构普遍采用的 IOE 系统(IBM 的小型机、Oracle 数据库、EMC 存储设备)。但它一年年地表现出体力不支,最终在 2010 年遇险,几乎崩盘。
自那以后,蚂蚁金服意识到这个传统的架构走到头了,必须走“去 IOE ”,转云计算的路。从 2011 年其,支付宝的架构开始向云计算转型,到 2013 年已经几乎“转完”。到 2013 年整个系统完全转换成云计算方式,100% 机器资源自有,天猫双 11 所有机器都是自己买的。
不同于从前的集中式架构,云计算是分布式的,扩容的方式很简单,只需要加机器就可以满足数倍涌入的需求量,系统本身不受压迫,它可以全自动、标准化操作。从前“天猫双 11 ”可能需要扑上去上百人处理的问题,现在十几个人就可以解决了。在新的系统中,“加机器”也是每次都以万台为单位的。
但即便是到了 2010 年,支付宝每秒钟交易笔数也只有 300 笔,而 2016 年“天猫双 11”,支付宝的交易峰值达到每秒 12 万笔。因为,2016 年时,支付宝成功转向了弹性架构。
弹性架构解决的问题则又更广了,而且也不仅限于天猫双 11。例如,蚂蚁金服每年都有多场大促,有的时候天猫双 11 和交易支付相关,但是“双十二”还要和线下支付链路有关系,春节红包走春节红包的相应链路,整个系统链路不一样。
“我们做的能力是可以按照运营的需求把对应的系统进行化的弹出,这样可以极大的节省成本,到了 2016 年是 50% 是自有的,50% 是在云上”,胡喜透露。
“2017 年,我们推出离在线混部,将性能较差的离线机房能力也能用户在线处理。到明年,几乎是所有离线资源和在线资源融合在一起,从 IOE 的架构变成分布式架构,分布式架构还可以利用大数据的机房把所有机房资源可以放在一起”,他说。
当然,这些还并不是蚂蚁金服的全部野心,这家公司并没有错过今年最热的“科技单品”人工智能。但是,将 AI 应用于金融系统,最大的挑战还是可靠性和安全性:如何既可以保证系统智能化又能提升系统的可靠性和安全性?
他们正在尝试的是做一个金融领域的“免疫系统”,和人的免疫系统一样,这个系统将专门处理故障自动发现和恢复。在今年,和这个“免疫系统”相关的 AI 能力会先在一些点上进行应用,比如故障预测,容量预测等。
无论是从底层基础设施的架构,还是中间业务的玩法,再到很多大数据的应用,蚂蚁金服“蜕皮”的背后都有一个不变的“小目标”:每年专为天猫双 11 提供技术保障投入的成本比前一年都降 30~50% 左右,到 2019 年将不再花一分钱投到天猫双 11 当天的技术保障上。
这个小目标提出于 2010 年,现在看来,进度条正在一路小跑。毕竟,2017 年“大考”,all in 支付技术保障的技术人员已经减少到了十几人。如果他们翻看几年前“天猫双 11”的老照片,也会发现照片里满公司的帐篷、睡袋已经是很久远的事情了。
-End-
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 奋力打开改革发展新天地 7935206
- 2 刘强东提前发年终奖 7912059
- 3 国防部回应美对台超8亿军援军售 7897144
- 4 “冷资源”里的“热经济” 7796389
- 5 刘诗诗方辟谣离婚 7694427
- 6 国足原主帅李铁已上诉 7516295
- 7 王鹤棣先天松弛感圣体 7473155
- 8 #胡锡进称目前回本了# 7334294
- 9 女子从体检“正常”到癌症仅半个月 7220442
- 10 女生学殡葬后亲戚递红包手都发抖 7194320