面对全员核酸这种流量洪峰,总有健康码会崩的


昨天早上,天津和深圳两个进行全员核酸检测的城市,健康码都崩了一次,服务在几小时后恢复,但是我想说,健康码在一天内进行全员核酸检测的大背景下,因为流量洪峰而发生崩溃的事,其实挺正常的。

因为流量洪峰带来的高并发压力,是小公司无法承受的。非IT人士,可能对流量洪峰的力量一无所知,我举几个例子说明一下就能感受了。

1、对于双十一来说,压力最大的是什么?是流量洪峰,以及随之而来的海量订单以及支付结算的任务。

对于流量洪峰,大家可以回忆一下春晚的盛况。微信红包在2015年初次在春晚亮相,结果流量洪峰直接打爆了微信的服务,0点到1点,红包根本发不出去;

然后在2018年春晚,阿里抢五福给全国人民发红包的时候, 准备了三倍于“双11”的服务器资源。

2019年春晚,百度发红包的时候,按照每秒峰值流量5000万,准备了10万台服务器,其中采购了5万台服务器,资源不足的部分,甚至让自己的现金牛业务——凤巢系统(广告)熄火,把服务器资源让出来给春晚红包。

然而,就在8点半前后,在春晚主持人口播大家可以下载百度APP领红包之后,连苹果的软件商店也被流量洪峰瞬间打爆了;其他安卓应用商店也纷纷跪倒在流量洪峰下,绝无例外。所以大家可以体验到流量洪峰的威力。

我们刚刚说的还仅仅是服务器端的资源消耗量;为了给大家提供服务,互联网公司还要采购大量的带宽资源,比如腾讯为了给10亿用户提供游戏、视频和公有云服务,在全球采购了超过100TB的带宽。

但一码通的实际情况比这复杂得多,解决流量洪峰的难度也会更大。就以粤康码自己发布的,在1月10日最高峰值流量达到140万/分钟来简化分析,问题可能出在接入网关上(我尽量说得浅显易懂,所以请专家轻喷)。

1、粤康码每分钟140万次访问请求经过微信小程序,第一步会抵达腾讯RIO智能网关,智能网关作为公网到政务网的第一道入口,就像医院的分诊台一样,实现流量控制、负载均衡等功能。

根据广州日报的报道,因为2021年5-6月的广州疫情,粤康码进行了系统调优升级,将「网关每分钟可承载的访问量从原来的10万+提升至60万+,每天的调用量从原来的10亿+提升至80亿+。」

打个简单的比方,我们在银行排队的时候,如果取钱的人多,哪怕银行金库里有足够的现金,也需要银行多开几个窗口,才能尽快给所有用户办完业务。

而粤康码的智能网关承载量是每分钟60万,突然涨到140万,怎么可能不卡呢?而且作为终端用户来说,如果健康码刷新失败,那一定会反复刷新,也会带来新的用户请求。

当网关的承载量超出设计值的时候,就像在高速公路收费站入口处排起了长龙一样,除非能够瞬间变出一排收费站,否则堵车就无法避免,就像下图的2019年广东高速收费站堵车一样。

腾讯RIO智能网关的硬件,包括逻辑服务器和存储服务器两部分,虽然支持横向扩展的,但是横向扩展智能网关硬件资源同样需要时间

需要哪些时间呢?我们看看下面这张图就能明白了。

运维团队突然发现服务卡顿甚至崩溃,他们首先需要定位问题,到底是流量洪峰的问题,应用服务器宕机,还是后端数据库读写故障,这需要时间。

当问题定位出来,是因为移动设备访问量突然暴增,流量经过互联网区的防火墙到达接入网关后,接入网关被流量洪峰打爆,这才找到了问题的解决方案——急需扩容。

但是扩容并不是领导下个命令就能一分钟搞定的,运维人员需要先协调出可以使用的DMZ区服务器资源(很可能没有现成的,需要硬挤出来),然后在上面开通智能网关服务,所以安装部署需要时间,10分钟左右。

新的服务器需要开通防火墙策略,按照政务网的安全要求,防火墙策略需要由政府侧的安全团队负责,并且完成一个申请-审批-开通的流程,最后由某个网络管理员开通防火墙策略,这需要时间,15分钟左右。

现在的业务应用前端大多采用微服务架构,支持弹性伸缩,但是弹性伸缩同样需要时间,比如1分钟左右;

现在的业务应用后端仍然有一个支持高并发的关系型数据库,比如腾讯的TDSQL,数据库可能需要做实例升级(扩容分片、实例分片),升级完成后还需要校验,确保数据一致。这大约需要10分钟左右。

在这个过程中,还会有各级领导打来电话询问情况,关心进度;操作人员忙里出错,敲错代码;关键时刻电脑卡顿重启;硬件资源协调不到位等各种问题——倒霉事绝对不会只发生一件的

所以如果一码通因为流量洪峰导致宕机,需要扩容的话,能在两个小时里恢复服务的,背后都肯定有一支召之即来来之能战的靠谱运维团队,一个各级负责人能快速反应审批的政府机构,一批相对冗余的硬件和带宽资,还有性能稳定可快速横向扩展的软件系统,比如腾讯里约RIO智能网关和TDSQL分布式数据库这种。

为什么不多准备一点资源?

因为面对千万量级的用户,开发者必须在用户体验(可用性、响应速度、一致性)和服务成本(带宽、服务器、交换机、防火墙、运维人员)之间去做平衡。

根据CAP理论,这种面对互联网海量用户的分布式系统,是不可能同时满足一致性、可用性和容错性的;一码通这种使用政府预算建设,又要求容错性的,开发者只能在一致性和可用性中做平衡。

而一个城市突如其来的疫情,会导致城市管理者快速做出「全员核酸检测」、「全员亮码」、「全员展示核酸检测结果」这样的决策,这样的决策必然会带来流量洪峰,而且是无法预测的——建设者和开发者没法为了无法预测的事情去无限制的申请预算

开发者只能采用一些变通的方式。比如2020年阿里的双十一,订单峰值为6100万/秒,但是整体的购物感受却比较顺滑,原因就是技术人员用时间换取了空间。

比如2020双十一,所有预付定金的商品都要等到1点后才能付款,这就有效地降低了0点开始时的支付和结算的数据处理洪峰。

零点,工程师先把大部分计算资源分配给交易等应用,让大家愉快地清空购物车;过了1点后,再把这部分资源空出来,重新拉起交易和结算的微服务,供预付定金的用户下单结算,这样就有效分担了压力。

另外,通过双十一二十多天的预热,很多用户领了优惠券,预付了定金,收藏好了购物车,这就有了预测的一句,工程师可以有预见性地准备足量的前端计算资源、缓存资源、消息队列、数据库等资源,并做好一定的冗余。

在零点之前,工程师已经进行了数据库、缓存、消息、前端的预热,有效避免零点大量流量涌入时,前端、中台和后端之间还要浪费2ms握手建立连接,以免用户体验到卡顿。

可阿里能做得好的原因,是因为双十一是一场在固定时间固定地点开打的战役,整个团队在之前就做好了充足的演练。

阿里会在10月进行3次全链路压测验证;每次全链路压测,都会有跨多个事业群的技术人员参加,保底1000人。阿里的全链路压测技术已经成熟,压测可以在影子系统中进行全天候的测试,而不会影响核心系统。

可对于一个城市的一码通来说,是不具备这样的海量资源的。所以,随着春节带来的人流量,很可能在某些城市爆发疫情,然后政府仍然会进行全员核酸全员亮码,那时候也一定会有健康码被流量洪峰打爆。

友情建议各大中型城市赶紧升级一下一码通的软硬件配置,天津(直辖市)和西安(独立一码通)的硬件配置就是最好的参考指标,粤康码支持整个广东,其实参考性不大。

毕竟,如果能花一两千万避免一码通在关键时刻码不亮,其实也是蛮值得的。

春节快到了,祝各位读者大大都能过上一个安定、祥和、阖家欢乐的新年!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容