微信维护了多久(微信系统不崩的秘密)

首页教程更新时间:2023-06-03 01:08:11

微信维护了多久,微信系统不崩的秘密(1)

本报记者 任晓宁 北京报道

微信为什么没崩过?

12亿中国人都在使用微信,却很少有人思考过这个问题。其实,微信也曾徘徊在濒临崩溃的边缘,腾讯基础架构部运营管理支撑中心总监邹方明现在还记得2014年除夕,人们刚学会用微信发拜年视频,流量直接爆掉,系统濒临崩盘,公司上下所有人的压力都集中到他一个人身上,等他做出决定。他说,那是他最痛苦的时刻。

直到现在,在微信使用量最大的时刻,比如除夕,或是元旦、七夕、中秋,或是情人节,腾讯团队也会提前几个月筹备资源。前几年的高峰期,负责腾讯红包系统运维的肖攀甚至会拜一下QQ公仔,就像拜佛一样,求系统不崩。

现在,他们已经积累了一整套保证系统不崩的方法论。

腾讯10年维护微信系统不崩的故事,是一个从手忙脚乱到心平气和的成长故事,是一个技术系统从无到有的故事,也是一个国民级用户产品的技术秘密。腾讯技术团队向经济观察报讲述了这些故事,他们构建的系统,使用的技术,在运行中积累的经验教训,对于其他公司,或可提供些许借鉴。

濒临崩盘的时刻

一刀切关闭系统、还是继续寻找漏洞?是邹方明必须立刻做出的判断。

他是腾讯的老人,2006年进入腾讯,负责技术,一手搭建了QQ和微信的聊天图片、视频系统。但在2014年除夕微信流量爆发而濒临崩盘的时刻,他依旧承受不住这种压力。“系统全方位崩盘,流量也爆了,前端的系统就好像洪水一样的,后端的系统更脆弱,连着倒了三四个系统和平台,不光我们的平台倒了,底层存储的其他部门其他系统也倒了。”

体现在用户侧的感受是,用户在朋友圈把视频发出去了,但身边朋友一个都没看到。

用户投诉源源不断而来,邹方明需要立刻做出判断。他可以花更多时间去查一下到底是什么原因导致,彻底解决问题,或是干脆一刀割下去,先暂时限制视频功能。“哪个方案能够最快恢复服务,我事后在脑海里模拟了无数遍,也想不出哪一个更快。”

邹方明站在机房前,对着那台显示崩盘的电脑,身边的运维看着他,手指放在键盘上等待指令,老板在办公室一言不发,产品团队需要一个回复,公司外数以亿计的用户,所有人都在等待着他的指令。

虽然只有十几分钟,但每一秒都是煎熬。

邹方明最终决定一刀切。至少切断后,再次恢复,能给到用户继续使用的可能性。否则,不知道要排查多久才能真正找出问题。直到现在,他也不能说自己的选择是最正确的,但那是最快解决问题的选择。

微信诞生早期,上面的时刻时有发生。2015年,微信红包赞助春晚,除夕当天红包量级从10万级提升到10亿级,负责运维的肖攀,买了个QQ公仔,插上两根香,每当觉得心里不稳妥,就去公仔前拜一拜,祈求千万不要出事。

微信后期,一套成熟的稳定系统已经形成,依旧有不可预料的事情发生。2020年2月,腾讯会议在一个月时间增长1000倍,腾讯云副总裁、腾讯基础架构部总经理肖志立也遇到了难题,他的难题不是技术原因,而是物力资源跟不上。

当时,因为疫情,运营商的BGP带宽满足不了、外网IP地址满足不了,并且,由于设备供应商无法复工,设备也供应不了。

肖志立给联想打电话,询问能不能给库房供1万台机器,对方说不好意思,员工都回家了,疫情期间没有办法回来。

直到最后,新机器也没有送到。最终,还是只能死磕技术,通过软件的优化,把之前一个单元支持100路的技术,提升到支持200路,才解决了物理资源不足的难题。

一个从无到有的系统

12亿用户感知到的,是每天都在使用的微信这个产品。他们感知不到的地方,微信背后仅技术平台就包括图片平台、音视频传输平台、红包系统、小视频平台等等,这些平台接入腾讯内部超过90%的业务。

平台组合在一起,形成庞大的系统,基本能解决已知与未知的问题。这些平台的形成,不是一蹴而就的,而是经历了漫长的过程。

图片系统历史最悠久,早在2006年的QQ时代就开始使用。当年,QQ用户突破1000万,上线了QQ空间相册,产品很受欢迎,但对于技术团队来说,一个首先面对的问题就是:撑不住了。存储方案也好,流量方案也好,索引方案也好,都支撑不了用户诉求。“整个底层存储都已经疯掉了,”邹方明来到这个部门时,恰好经历了这样的时代。一些公司在近几年赞助春晚或遇到突发事件时,突然发现的问题,腾讯在十几年前也遇到过。现在微信、QQ系统的稳定,是当年吃亏后积累的经验教训。

用户对图片的诉求,延伸出了腾讯第一代存储系统,衍生了TFS,之后有了相册系统,不过,当时,他们还没有想到做技术平台。

不久,新矛盾爆发。QQ农场火爆后,每个用户都有很多头像,但原有的相册系统支撑不了图像高IO(输入输出)。这种情况下,邹方明把相册系统做了简单的分支,就叫头像系统。

头像系统和相册系统,都是图片,应该分开还是融合?内部当时有些焦灼,经过很长的PK,他们觉得,还是应该融合到一起。融合之后,腾讯有了第一个技术平台,图片平台。

相对于之前各自分离的系统,平台的优势在于成本。腾讯其他团队也在做图片服务,他们发现,花了这么多年研发精力,还不如接入到图片平台中,把研发团队的生产力解放出来。

腾讯的其他平台随后逐渐诞生。

2016年,视频平台诞生。2019年,音视频传输平台形成。期间还有红包系统、文件系统、网盘系统,用户最核心的几个场景平台,都由基础架构部搭建完成。

长期以来,腾讯在互联网公司中都以产品力著称,产品的背后,是技术平台的助力。

去年火爆的视频号就是一个典型案例,一年时间,视频号推出了一系列功能,产品人员提出功能需求后,技术人员第二天或者是第三天就能拿出方案,这离不开平台的服务和支撑。“产品有想法时,研发人员能够很快速做出一个模型,尽快做迭代和尝试。”邹方明解释,“能够在60分的基础上去做加法,产品技术团队可以把视角放在用户喜欢玩的玩法上面,放在终端体验的细节上面去,从而从整个研发的长周期中挣脱出来。”

微信诞生10年,背后的系统也有所不同。2016年之前,系统处于性能不足阶段,当时出现问题,无论是漏洞或是代码问题,事件爆发的根本原因是,系统能力不足导致的故障。

2016年之后,系统升级,此后再有热点,或是再有突然事件,对于技术来说,就只是量级提高了,都在系统可以支撑的范围内。

在云时代,系统的支撑能力又有了增加。QQ于2020年完全上云,整体都在云端。微信花了3年时间上云,今年会全部上云。上云的好处是,如果有突发情况要从其他的业务腾挪资源,速度快很多。“否则我们就得先把设备从A业务上下来,再添加到B业务去,再做测试验证,这样时间就长很多。”

微信10年,系统的基础建设主要朝着两个主要的目标在做。“一个是系统的健康性,比如你的熔断能力,自我恢复能力,每年我们都在找方法。另一个方向就是系统单位成本的承载能力。从字面上去解释,因为我们的资源团队、产品团队,都会给出一个固定的成本,这固定的10000台设备,能够支撑100万次请求,还是500万次请求,是每年都在持续优化和迭代的过程。我们会发现,只要你的承载能力强了,就可以把每个危急时刻变成不危急。”邹方明说。

产品不崩的方法论

不过,即使有了系统,也不能完全保证不崩。尤其对于一款12亿人使用的社交产品,任何时刻都有不可控性。

直到现在,腾讯技术团队也不敢打包票说系统完全可控。“推演也是算不过来的,总会算错的。比如说零点全国发红包的人到底有多少?公司发红包的量到底有多少?这个东西说实话不是那么好估了,这个时候我们就会想,有没有保底的大招,来使得这个访问量控制在系统可接受的范围之内,这是非常重要的保底措施。”肖志立说。

崩盘之前,技术部门会提前预演,策划好“剧本”,“剧本”是一种柔性控制,也可以统称为降级。微信用户有时在高峰期会觉得微信消息有延迟,或是朋友圈视频分辨率降低,就是一种降级。

当系统遭遇了远超预估的访问量,就要降级,比如朋友圈视频平时一个视频大概2兆,但高峰时刻可以先砍一刀,把2兆砍成1兆,让更多的人有视频可以看。

在不可预判的业务场景,他们基本上都会以这种方法去应对。“高突发的时候,用户不会用得那么爽,但能让90%用户觉得满意,不至于说突然量超过预期了,然后就立刻不行了”。

肖志立告诉记者,腾讯一直有一个海量之道的技术方法。在突发比较高时,始终有一个漏斗模型,“第一层先去顶住绝大部分的请求,把符合要求的再往下层漏,再往下层交易最重的系统。这样能保证承担的请求是真正需要的请求,而不是把前面所有的请求都打到后面去。”

这个技术方法论被视为腾讯的保底大招,多年来屡试不爽。

如今只道是寻常

2021年春节,腾讯基础架构部在一片祥和中度过。除夕5点半,肖志立把当时留守的几十个兄弟拉到办公室对面的一个餐厅聚餐,吃到6点半,回来守着机器一起度过了除夕夜。

全程没有任何惊险时刻,无惊无喜。

肖志立依旧全程盯着。他每年春节前后都在,春节是最考验微信的时刻,在他们技术内部看来,平时吹什么牛,都不如扛过春晚的流量来的实在。“每次我也在想,我也不去敲代码,也不去做指令,为什么我要在?我能够感觉到就是崩盘了之后,大家都指着我去做‘要人命’的决定,出了故障我才有价值,没出故障我就像一个闲人。”邹方明已经记不清自己守过了多少个春晚,只是觉得很感慨。

在基础架构师的职业生涯里,非常重要的一点,就是在关键时刻做出关键决策。

2018年之后,微信很少再有关键时刻。这一年,微信红包的用户量基本上接近于微信的用户量,之后的增长基本上已经平稳。

肖攀最近两年也没有再拜过QQ公仔了,“都比较有信心。”

现在的系统,已经不再需要大的变动。并且多年春节经验后,团队值班的手段和策略都是已经完备和成熟的,还可以提前预判事件。比如今年,他们预测云年夜饭会提前导致一个小高峰,果然,当晚7点的流量是往年5倍,因为已经提前预测,今年也平稳度过。

对于现在的腾讯技术团队,不再有惊心动魄的故事发生。

架构师的经验教训

微信成立10年,腾讯技术团队也跟着走了10年,他们经历高压,经历崩溃,经历焦虑,到现在视为寻常,一路走来,他们见证微信用户从0涨到12亿用户,与有荣焉。“做技术支撑的团队,一定要有一个好的心态,就是你不在聚光灯下,但是我们心里面知道今天在台上的产品那么成功,跟我们是有很大关系的,自己的内心要足够强大,要相信这一点。”

他们也摸索出了足够多和业务部门沟通的方法。邹方明经常给团队灌输的理念是,除非你有确凿的依据能证明你是对的,不然你就先听业务部门的。

目前,微信背后的技术系统已经接近完善,“没有特别明显的缺陷和短板。”肖志立对此很自信。

不过,技术团队依旧存在焦虑感。其实,腾讯这支技术团队一直很稳定,腾讯内部架构几经大动,技术部门始终没变。他们经历了文字互联网时代、图片互联网时代,到了视频互联网时代,再到现在的实时音视频互联网时代,技术一直在演进,内容越来越丰富,实时性越来越强。这对于背后系统承载能力的要求,对于稳定性、延时的要求,也要比原来高很多,技术永无止境,他们也永远等待攻克下一个难关。

邹方明还在持续学习中。他经常参加线下活动,在一些论坛或峰会上,奔到现场面对面和业界大牛交流取经,“我们不能够关着门做,你必须要到外面找一些可学习的点,业界的大牛很多,他们会有很多比较好的创意和方法论。”“你永远不知道什么时候冒出一个新的东西。”肖志立很感慨,“作为支撑团队,我们得有这种魄力和能力,能够在弹药不够的情况下支持业务团队打胜仗。”

本文经「原本」原创认证,作者经济观察报,访问yuanben.io查询【3P1JE714】获取授权信息。

,
图文教程
相关文章
热门专题
推荐软件
奇热小说
奇热小说
下载
QQ2019手机版
QQ2019手机版
下载
王者荣耀
王者荣耀
下载
百度浏览器迷你版
百度浏览器迷你版
下载
2345浏览器手机版
2345浏览器手机版
下载
网易邮箱
网易邮箱
下载
爱奇艺
爱奇艺
下载
网易云音乐
网易云音乐
下载
WPSOffice
WPSOffice
下载
优酷
优酷
下载
谷歌浏览器(Chrome)
谷歌浏览器(Chrome)
下载
迅雷看看播放器
迅雷看看播放器
下载
UC浏览器
UC浏览器
下载
QQ音乐
QQ音乐
下载
阿里旺旺买家版v9.12.10C官方版
阿里旺旺买家版v9.12.10C官方版
下载
360安全卫士v12.1官方版
360安全卫士v12.1官方版
下载
猜你喜欢
利客修商户版
利客修商户版
下载
真人快打9任意换人修改器v1.0绿色版
真人快打9任意换人修改器v1.0绿色版
下载
微信充电余额
微信充电余额
下载
英雄联盟手游体验服
英雄联盟手游体验服
下载
四川烧烤网
四川烧烤网
下载
畅驾电脑版
畅驾电脑版
下载
法人一证通协卡助手v3.4.5.0官方版
法人一证通协卡助手v3.4.5.0官方版
下载
共青元素
共青元素
下载
便便工厂
便便工厂
下载
祭奠堂
祭奠堂
下载
进口气动
进口气动
下载
天国的道路
天国的道路
下载
数字维修
数字维修
下载
魔筷星选
魔筷星选
下载
卜大师
卜大师
下载
新概念英语句霸v5.85
新概念英语句霸v5.85
下载