dbaplus社群 05月07日 07:52
春晚直播高强度技术保障,B站实施策略全盘托出!
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了B站技术团队为保障2025年春晚直播稳定运行所做的努力。面对用户访问量激增、系统容错空间极小等挑战,团队通过构建场景元信息平台、设计分级多层降级方案、进行红蓝对抗演练等方式,全面提升了系统的稳定性。同时,在业务开发和基础架构层面,也采取了多项措施,如首页导航的精准保障、答题玩法的稳健实现、以及资源和组件的全面保障,最终确保了春晚直播的顺利进行。文章详细阐述了技术团队在各个环节的具体实践和经验。

🛠️ 场景梳理与动态更新:B站构建了场景元信息平台,通过客户端实时采集用户操作链路数据,进行链路拓扑分析,构建出直播核心场景的完整依赖关系。平台还能动态监控链路变化,及时提醒用户补充演练场景,并展示演练覆盖率,确保风险无处可藏。

🛡️ 分级多层的业务降级方案:针对直播间的核心功能模块,B站设计了三级容灾体系。第一级保障进房播放,通过本地缓存兜底、双活架构和客户端降级策略,避免黑屏发生;第二级保障次优先级模块,如答题系统和弹幕系统,通过多级缓存体系和限流模块进行降级;第三级处理可降级模块,如底部面板,预先静态配置最小化功能模块,保障基础功能可用。

⚔️ 红蓝对抗演练:通过蓝军模拟攻击的方式,B站技术团队发现了技术和非技术的保障隐患,并快速完成查漏补缺。蓝军团队模拟流量洪峰、关键微服务故障、现场突发情况等,检验了红军团队的应对能力,并最终发现多个隐患并进行修复。

通用工程 2025-05-07 07:15 广东

稳定性保障储备知识直线上升!

引言:一场不容有失的战役

2025年1月9日,哔哩哔哩正式宣布与中央广播电视总台达成合作,成为《2025年春节联欢晚会》的独家弹幕互动直播平台,对于技术团队来说首要目标是确保春节七天系列直播活动稳定运行,尤其需要重点保障春晚四小时黄金时段的直播质量万无一失。然而,一个细微的代码错误或第三方服务的意外中断,都可能导致整个直播系统出现故障。针对这些潜在风险,我们将详细介绍相关应对措施与解决方案。

1、保障挑战

除常规活动需求开发外,项目组特别召集了跨部门的核心技术人员,专门就系统稳定性保障事宜进行深入研讨。会议期间,与会人员就“活动保障与日常运维保障的本质区别”这一关键议题展开讨论。经过分析,我们认为活动保障与日常业务保障的主要差异体现在以下几个方面:

为深入探讨各项技术保障措施,我们特邀各技术领域的代表进行专题研讨,共同分享其保障策略与实践经验。

2、保障思路介绍

二、业务架构篇

1、故障场景的体系化构建

1)场景梳理:从“文档堆”到“活地图”

每次大型活动前,通常都会进行一次摸底故障演练,故障演练是按照用户的功能场景来划分的,而场景是指提供用户功能的后端接口和相关调用链路上应用与调用关系的集合,准确、无遗漏的调用链路是我们做故障演练的数据基础,在过去,场景的梳理完全依赖人工经验,散落在各团队的文档中,人工梳理容易出错且非常低效。2024年,业务架构团队构建了场景元信息平台,通过客户端实时采集用户操作链路数据,进行链路拓扑分析,构建出直播75个核心场景、300+子场景的完整依赖关系。

例如,用户在首页点击“春晚直播卡片”时,后台实际触发了100+微服务调用,涉及获取房间信息、用户与挂件信息、播放地址、风控判断、数据统计等等数十个环节,纯靠人工梳理很难梳理完整。

在有了场景信息后,下一步是验证每个接口和链路的故障表现,明确在业务场景下的强弱依赖关系,发现不合理的依赖问题,为了解决场景链路到故障点创建和执行的鸿沟,我们打通了故障演练平台与场景元信息平台的数据交互,使其可以在场景元信息平台上一键进行故障创建和演练执行,极大的提升了演练效率,将每个故障点的演练耗时从分钟级降低到秒级。

演练完成后,可以直接在平台上面进行演练结果的标注:确定强、弱依赖、是否需要改进、补充故障信息等,通过这种方式让演练的进度变得非常直观,演练结果也不易遗漏,帮助减少重复演练,最终实现演练的增量执行。

2)动态更新:让风险无处可藏

2、分级多层的业务降级方案

针对直播间的核心功能模块,我们设计了三级容灾体系:

第一级:进房播放必保

1)本地缓存兜底:在播放服务提前部署热更新配置文件,预置多个重保房间的播放地址、封面图等核心数据,当核心依赖故障时,直接返回内存中预置的播放数据。

2)双活架构:播放链路的核心服务做到双机房部署,任意机房异常都可以动态调控流量,将流量切到正常机房。

3)客户端降级策略:首次进入进入直播间时会下发兜底地址,当三次播放地址请求超时后,客户端自动启用兜底播放地址,避免黑屏的发生。

第二级:次优先级模块保障

第三级:可降级模块处理

底部面板:预先静态配置最小化功能模块,当底部面板服务不可用时,首先保障基础功能可用,同时隐藏故障对应的功能子模块,降低问题影响。

3、流量地图与系统容量预估

这部分我们将在下一篇文章详细介绍,敬请期待。

4、红蓝对抗演练

我们通过蓝军模拟攻击的方式,发现技术和非技术的保障隐患,快速完成查漏补缺。

蓝军团队的角色与筹备

在春晚项目预演时,共约10名研发、运维、测试同学组成了“蓝队”团队进攻,其他技术、SRE同学作为“红军”团队防守。

攻击剧本:

最终发现多个隐患:

三、业务开发篇

1、首页导航和春节Tab页承接:不能输的流量洪峰挑战

首页框架可能是B站年纪最大,业务逻辑最复杂的模块。但它一方面要时刻响应产品侧灵活多变的需求,另一方面也要直接承接春节的流量洪峰冲击。

在极限的开发节奏下,又快又好是我们始终如一的承诺:

春晚当天交出了一份完美答卷:多场景召回跳转体验一致,晚会口播期间稳定的承接了洪峰流量。

2、主活动玩法-答题:在不断变化的需求和未知流量压力下寻找inner peace

答题作为本次直播活动新引入的主玩法,一直处于“变化”和“未知”中,需求在变、流量口径在变、产品形态在变,技术方案不断推翻重来迭代,研发侧压力陡增。

为此研发侧只能“变中求稳,稳中求进”:

在春晚当晚,看着一轮轮口播带来的突增峰值流量,心中已没有太多紧张和压力,Prepare for the worst, hope for the best。直播互动答题参与人数千万+量级下2s内精准统计现金瓜分金额,没有“炸”,玩法顺畅,一切皆如所愿。

四、基础架构篇

春晚保障对基础组件、基础设施保障都是一个大考,既要满足业务资源需求、又要保障基础组件稳定性,确保业务必保目标达成。

面临的挑战:

1、资源保障

资源需求:业务技改治理 + 基架容量调控

1)业务技改治

计算资源治理:冷起场景治理,通过无流量接口下线、弱依赖接口"口播期间"干预端上不请求、多接口合并成单接口请求等手段,极大降低源站计算资源请求。

带宽类资源治理:干预离线包资源下发,口播期间不下发春晚无关离线包。

APP流控:服务端限流时,下发端上流控冷却策略,避免限流后触发业务雪崩。

2)基架容量调控

2、组件稳定性保障

组件稳定性:业务摸高压测 + 故障域隔离 + 业务降级

业务压测:压测是保障组件容量符合要求的必然途径,我们全面梳理春晚活动场景用到的基础组件,细化到每一个DB库,KV表,MQ的Topic,按照预估峰值的1.5-2倍扩容,业务进行摸高压测,验证系统承载能力并优化性能瓶颈。

故障域隔离:基于不同场景,隔离影响故障域,直播、活动、支付等核心场景在资源层独立部署,隔离故障域。

业务降级:梳理每个组件可能的异常场景及收敛时间,业务建设容灾能力,整体策略如下:

3、做好预案

做好容量、组件保障预案,在突发事件中提前规划好预案也很重要,确保出线重大故障能快速响应、有序处置,最大限度降低风险与损失。

五、测试篇

1、全链路依赖梳理

核心目标:通过主动模拟故障的方式,验证活动玩法、流量业务、直播看播、社区互动等春晚相关核心服务的稳定性,解除非合理强依赖,明确强依赖故障场景下的降级预案和兜底容错

故障类型和依赖识别:聚焦服务间调用类故障、第三方依赖服务类故障、基础组件稳定性故障,重点关注端到端兜底容错类问题、强弱依赖合理性问题、多活容灾类问题等

风险分级和场景分类:

2、演练执行

3、自动化故障演练

面向提高演练频度和效率,实现故障模拟的自动注入及恢复、端到端自动化测试、故障智能判定和定位分析

4、断网演练

极端机房网络故障场景下,如专线中断、单机房网络设备异常的基础故障,需要将流量全切其他可用区。面对春晚高稳定性要求的挑战,业务多活有效性需要提前预演,保证多活在故障时可生效、可切量、可逃生。

可通过前置cdn切流,在不影响线上用户的同时,模拟双机房专线中断故障。QA汇总业务场景范围和测试案例,在故障期间通过测试CDN定向校验多可用区,验证单可用区多活服务的有效性以及多活自动容灾的效率。

春晚保障期间,通过系统化多轮次故障演练,累计覆盖900+核心业务接口,模拟9000+上下游服务故障场景,共定位召回300例潜在业务稳定性隐患,为系统的可靠性和容错能力提供了坚实的技术保障。

结语:以技术敬畏之心,守护每一份热爱

通过以上各位技术同学的深度分享,相信各位读者已经获取了宝贵的技术洞见。当春晚直播倒计时归零,观众在直播间弹幕中欢庆“新年快乐”的同时,技术团队监控大屏上显示的“零定级事故”字样,正是对我们技术团队数十个日夜精心准备与坚守的最佳印证。

最后,附上我们保障团队的合影留念,让我们明年再见吧~

作者丨小旭、Shliesce、春申、山涛

来源丨公众号:哔哩哔哩技术(ID:bilibili-TC)

dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn

运维相关活动推荐

汇集2025年讨论度最高的运维议题,XCOPS智能运维管理人年会将于5月16日在广州举办。大会精选以DeepSeek为代表的大模型与AIOps深度结合、全栈可观测性能力建设、金融级Agent智能运维体应用、云原生下的降本增效与质量保障等干货案例,就等你扫码一起来探讨↓

阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

B站 春晚直播 稳定性保障 技术攻坚
相关文章