打造承载百倍级增长后台背后的力量
![打造承载百倍级增长后台背后的力量](https://static001.geekbang.org/infoq/1f/1f42dffed2760a8bd33a4342ae922ab6.jpeg)
项目介绍:腾讯课堂是腾讯推出的专业在线教育平台,凭借技术优势,实现在线即时互动教学,打破地域的限制,让每个人都能接受优秀老师的指导和教学。
一、背景
2020 年初,新冠病毒肆虐,疫情大面积爆发,受疫情影响,学校无法开学。为了广大学生的学业不受影响、响应停课不停学的号召,腾讯课堂临危受命紧急开发极速版,守护千万师生身心健康。
二、用户挑战
腾讯课堂 2 天上线极速版,2 周内支持同时在线人数超百倍增长,对整个后台挑战非常大。
三、用户痛点
业务激增,系统稳定性危如累卵:腾讯课堂极速版要解决各学生线上上课需要,支持量达到 100 倍量级增长。业务激增给后台带来十分巨大的挑战。
系统性能水位模糊,承载能力难以评估:保证腾讯课堂要稳定上线,无法评估系统的承载能力,扩容、资源分配缺少数据支撑,扩容进展十分艰难。
工期紧,量级大,压测能力要求高:上线急,标准高,任务重,一般压力测试难达标。腾讯课堂大年初三收到军令状,使用 2 个通宵生死急速开发完并上线。这代表着需要强大的系统能力,在 2 个通宵内进行大量压测任务,一扫百倍级增长带来的一系列问题,保障上线的系统稳定。
四、解决方案
1.全面的压测能力支持 &丰富的开放能力
优测提供强大全面的压测支持,可完成整个产品后台服务的容量评估、单接口压测、全链路压测等。支持与用户自有系统/工具集成,接入 DevOps CI/CD 流程。
腾讯课堂为完成这次艰巨任务,做出“先抗住后优化”策略,紧急进行梳理极速版用户路径,接入优测压测进行系统容量评估,扩容,单接口压测,全链路压测,并持续验证迭代,保障系统的可靠稳定。
容量评估从用户端->接入层->逻辑层->存储层多层级对各个链路模块进行全链路容量评估,确保各个环节均无出现短板。
![](https://static001.geekbang.org/infoq/4b/4b8b9e5b8b22038782fec944cc287ace.png)
单接口压测因为没时间全盘优化,在量突然暴涨的情况下,某个模块过载或者爆 bug 的概率会变大,所以对腾讯课堂的用户登录->查课表->上课等核心路径上,采取单接口压测方式,分析链路瓶颈,采取策略,保障主要模块稳定。
全链路压测初步扩容后,防止梳理不全等容易遗漏的问题情况,腾讯课堂使用优测的全链路压测来挖掘性能瓶颈和系统隐患。
![](https://static001.geekbang.org/infoq/ec/ecb4839401e45fba7483e908a072cde4.png)
2.强大的测试用例 &并发压力执行能力
优测压测能力强大,可模拟每秒百万级以上请求次数,即召即用,无需等待。
腾讯课堂上线急迫,开发与压测并行,白天关注监控和开发版本,凌晨 12 进行压测和发布扩容。整体压测需求量巨大,至多每日发压 120 多次,日均发压 80 次左右。
五、效果
https://utest.21kunpeng.com/home/perftest?from=infoq通过多样化、强大的服务对腾讯课堂提供多层级全面压测支持,深度挖掘出上线前系统的性能瓶颈,并持续迭代优化,使其在紧迫的时间内得到了质的飞跃。
腾讯课堂上线后,短短 2-3 周,各项指标百倍增长,AppStore 免费类排行榜进 Top10,教育类稳居 Top1。
![](https://static001.geekbang.org/infoq/78/78711cb1a139bf58446573002605b655.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
![](https://static001.geekbang.org/infoq/79/791a9982d9e50cc9db158283a232118e.jpeg?x-oss-process=image%2Fresize%2Cp_80%2Fauto-orient%2C1)
版权声明: 本文为 InfoQ 作者【优测云服务平台】的原创文章。
原文链接:【http://xie.infoq.cn/article/27198bab187b2ba4de44d74c2】。未经作者许可,禁止转载。
评论