图片来源:视觉中国
文 | 吴俊宇
罗振宇在2019年的跨年演讲提到了这样一个细节。
得到APP原本打算在春晚投放广告,但是他被曾经的广告部老领导劝住了,因为春晚广告有一个不成文的规定:
要想在春晚打广告,产品日活得先过亿。原因是,用户量过低,技术很难支撑起庞大的流量。
新年钟声越来越近了,红包集福分X亿活动全国火热,也意味着一年一度的“春晚红包大战”越发临近了。即将到来的猪年春晚,百度拿下春晚红包合作,那么如今日活已有1.6亿的百度APP能否撑住“史上最大红包流量”?
可能的答案是,技术强如百度,应对瞬间涌入巨大流量或许也要遭遇短时间宕机的“幸福烦恼”。
春晚红包宕机史,也是中国互联网技术进步史
2014年微信红包刚刚诞生时,虽然偷袭了支付宝的珍珠港,却难免遭遇宕机的烦恼。有那么几分钟总是发不出红包也接收不到红包。
本来以为微信技术团队以及腾讯金融技术团队会长教训,没想到第二年依旧如此。
2015年,腾讯和央视合作,从除夕到初五的6天里,向全国人民发5亿红包。
不过,微信再一次低估了流量的冲击。虽然第一年微信红包冲击下的宕机还历历在目,2015年除夕,大量微信红包涌入后,有些群消息滞后,在晚上八点左右曾经宕机一小段时间。
我们可以看一看当天微信红包的峰值数据。除夕当天,微信红包收发总量达10.1亿次,春晚全程(2月18日20:00-2月19日00:48)微信春晚摇一摇互动次数达110亿次,出现在除夕夜当天22:34出现峰值8.1亿次/分。
当时有媒体解读称,微信团队乃至腾讯团队并没有阿里巴巴双十一这种瞬间大流量冲击的应对经验,所以引发了宕机。
那么阿里系面对春晚的流量就更有经验吗?答案是,阿里来也一样,每年的瞬间海量流量依旧会引发阶段性宕机现象——2016年,支付宝拿下了春晚合作机会。
支付宝官网数据显示,2016年除夕夜,支付宝互动平台的总参与次数达到3245亿次,是2015年春晚互动次数的29.5倍。在21点09分达到峰值210亿/分钟。那年春晚,支付宝还是偶尔有几秒钟宕机时刻。
有春晚经验就不会再犯错么?扛过了双十一、扛过了2016年,淘宝团队依旧低估了春晚流量。
2018年春晚,作为合作方的淘宝提前推导了各种极端情况,在2017年双十一基础上再扩容3倍。
实际情况是,春晚当晚登录的实际峰值超过了2017年双十一的15倍,尤其新用户的瞬时登录更是完全超出预料,看起来牢不可摧的阿里服务器竟然还是宕机了。
2019新年,春晚红包交到了“技术牛”百度手里。百度以技术起家且著称,近年来更是在人工智能领域投入大量资源研发和布局,技术逐渐成为越来越重要的选择因素。
春晚红包史,是中国互联网的下沉史,知道并参与春晚红包的人越来越多,“红包热情”一再高涨,同样也带来了中国互联网的技术进步。
中国互联网技术也随之已经进入了“春晚时代”——分布式计算、线上智能容灾这些技术不断普及并进一步提高,已经成了每一年春晚背后的常规性操作和配置。
如何避免宕机?早早进入“一级练兵”状态
今年,作为央视春晚独家红包互动合作伙伴,为保证今年春晚红包活动不出问题,百度早早成立了一个数百人的项目组,包括产品、研发、运营、客服以及风控团队,进入“一级备战”状态。
在技术方面,百度提前落实了服务流量隔离、系统升级、专线新增以及服务器扩容等工作,完善流量峰值时段的体验,而且提前进行了多轮全链路压力测试和多轮的方案预演。
签下春晚红包后,百度已马不停蹄开始备战“试水”,比如支持各大电视台的春晚以及跨年晚会提前练兵以攒足经验。在1月份的时候,百度就和浙江卫视合作,送出了2亿红包。
百度技术、人员各部门备战充足,或许依旧难解完全不宕机的“幸福难题”。原因很简单,一方面,瞬间涌入巨大流量是个巨大的考验,同时,红包机制涉及支付等一系列复杂的环节和流程,很多问题不是百度自己做好准备就OK的。
当然,春晚带来的庞大流量和新增用户对百度的服务器来说依旧会是一大考验;春节红包发送高峰期,用户请求量过大,会给服务器会带来巨大考验。
大量用户在同一时间发、抢红包,瞬间产生每秒千万级,甚至亿级的请求,请求如果不加以疏导处理直接到达后台,会导致服务过载甚至崩溃。
另外涉及支付业务的红包和支付宝的集卡红包、淘宝红包还不一样,它更像是微信支付的红包,技术冲击更强、流程更复杂。一个红包成功发出去,需要每一步复杂的交易流程都顺利才能完成。
表面上看,一个红包从发出到抢到时间不足一秒,但背后是在红包业务系统、交易支付系统、零钱账户系统这三个层级之间游走——它需要多方提前沟通测试。
因为一个红包如果是通过银行卡发出,必须要先向银行提出申请,银行会进行扣款,扣款成功后,后台会通知支付系统,红包系统到这时才会把红包放出。在其他用户抢到红包后,又会以零钱形式进入用户账户中。
红包几秒钟现金出出进进,都需要耗费服务器资源,由于资金频繁进出银行,部分银行的技术能力又非常有限,百度也需要和银行前期协调,进行承压测试。
此前腾讯FIT部门的负责人就和我提到说,腾讯2017年除夕前4个月就在和多家银行沟通,把除夕红包的目标值给到银行,把内部系统和银行接口对接,在前期进行数轮压力测试。百度今年估计也差不离,技术团队的人怕是早就在和商业银行加班加点进行前期准备。
宕机还偷乐?对BAT这是千载难逢“进修”机会
或许双十一宕机、春晚宕机已经练大了心脏,BAT们在宕机这方面从来都没那么苦恼——甚至把宕机当成是提高技术水平的好机会。阿里云社区对此进行过详细解读。
2017年春晚红包之后,阿里云团队的人欣喜发现,春晚红包的超大流量带来了支付系统的升级,以及灵动、弹性的新技术架构下,支付宝实现了从互联网金融架构基础上逐步拓展出了能同时全面支持生活互动场景类业务的技术架构体系。
对百度来说,不管怎样,2019年春晚都是胜利,就算依旧出现短时间宕机,也是“幸福的烦恼”。既然没办法逃不掉不如当成一次重要经历,尽情去享受这个过程。更重要的是,相信每一个经历过春晚红包这样“炼狱级”考验的团队,未来必然会更成熟。
先不说春晚必然会带来数以千万级甚至数以亿计的新用户,此后信息流业务可以得到进一步增长。百度云计算业务、百度金融业务都也会因此受到一次全方位的洗礼和精进。金融业务未来能够有更强的技术实力帮助传统银行、中小金融机构转型新金融。
同时,这些实践也让更多商业银行、金融机构看到了云计算与大数据技术服务于金融行业更多的可行性,而这也正是云服务所希望的结果。
百度云业务也因此得到提前锻炼,应对大流量的挑战。
我们甚至可以预测,春晚的流量规模,未来可能正是5G和物联网时代的“常规需求”,提前排兵布阵,百利无一害。
《圣经:新约路加福音》里面有这样一段叙述。耶稣对众人说:“你们要努力进窄门。我告诉你们:将来有许多人想要进去,却是不能。”
“窄门”的意义是,那些寻求进入窄门的人必须经过斗争和压力,就像一个跑步运动员紧张冲向终点线,所有的肌肉拉紧,并付出他的所有努力。
对中国互联网巨头来说,春晚红包就像是一道“窄门”,只有真正走过“窄门”,才能历经洗礼,应对未来。这样的洗礼,当然也是另一种幸福。