世界杯千万级直播高稳定的挑战和实践

简介:

今年夏天,俄罗斯世界杯召开。在刚刚落幕的重庆云栖飞天技术汇专场中,阿里视频云技术专家裘良科,就世界杯这个话题,跟参会嘉宾一起探讨了千万级直播高稳定的挑战和相关实践,本文为演讲全文。

image

2018年俄罗斯世界杯从6月14日到7月15日,跨度整整一个月,共有64场比赛,优酷成为央视指定的世界杯新媒体官方合作伙伴,作为优酷的同门兄弟,阿里云也一并为世界杯直播的提供技术支持,一同征战世界杯。 整个世界杯期间,阿里云的服务是不间断的,要始终保持着稳定与流畅。而且除了支持优酷外,阿里云同时支持着CCTV5、CNTV、咪咕的世界杯直播,支撑了全网世界杯流量的70%。单单优酷的法阿大战单场并发就达到2000W,加上其他的几家客户,足足有数千万的用户并发。这么大规模、持久的赛事,对直播平台也是很大的挑战。

那么从技术层面看,世界杯直播的挑战究竟有哪些?

  • 第一个挑战是内容集中。世界杯核心内容就是CCTV5,加上解说频道,多角度频道就10多路直播,假设源站出现问题,那么所有的直播都会出现问题。
  • 第二个挑战是高并发。世界杯高达千万级的并发在线观看用户,且用户量徒增非常明显。假设直播平台出现短暂故障,所有用户可能会重新请求或者请求其他系统,对系统压力也会非常大。
  • 第三个挑战是安全性。世界杯是世界级盛会,假设中间出现安全事故,影响会非常大,平台方也会有不可推卸的责任。

在这样的挑战之下,阿里云要始终保持着世界杯直播的稳定、流畅、安全,背后有一套复杂的方案和逻辑,下面我们来从稳定性、安全、监控三个部分展开。

稳定性

下图是世界杯直播稳定性架构图,分为四大部分,信源生产链路、视频云中心、CDN和客户端。
image

第一部分是信源生产链路,因为最原始的信号很有可能不被云平台使用,比如非常高码率的信号,不适合传输,所以一般都会有信源生产的链路进行编码,提供一个源站服务。第二部分是视频云中心,整个直播平台架构是中心架构,所有直播所需要的功能,比如转码、截图、录制、水印等功能,都是在中心完成的。第三部分是CDN,CDN是真正承载整个世界杯直播的用户压力的一环,数千万的用户都跑在CDN上。第四个部分是客户端。接下来分各个环节来介绍阿里云如何保障服务稳定。

一、信源生产链路

  • 多信号源输入:生产链路环节一般是用户自己搭建,建议用户多信号源输入,因为单信号源输入的情况下,如果信号源中断就会导致业务中断。如果信号源确认只有一个的话,建议用户信号源多链路输入,避免单链路故障而导致信号源无法接收。
  • 主备线下转码器:前面讲到原始信号源是没办法直接使用的,所以会用到一个编码器,我们一般会要求编码器的主备是实时能够获取多个信号源,并支持实时切换的。切换的模式有两种,第一个是直接主备模式,在同时输出源,只有1台编码器。第二个双备的方式,2台编码器的输出源同时给云平台提供数据源,这样的方式,我们最终会把转码器的数据通过拉流或者推流的方式同步到视频云中心。如果是拉流的方式,视频云中心会从多个源站同时拉流,保证任何一个源站/编码器出现问题,视频云中心都可以顺利的拿到数据。如果是推流的方式,主动权在用户,用户也最好能多个源站/编码器同时向视频云中心推流。
  • 多出口推/拉流:源站的出口链路一般会要求是多个,因为单出口链路存在网络风险。

image

二、视频云中心

  1. 结合多网络输入,视频云中心也会采用多网络接入。
  2. 流合并,多个流来到视频云中心,通过特有的合并组件,把多个流变成一路流。
  3. 组件分布式部署,对于重大赛事,所用的机房我们会采用独立资源专用机房,和其他业务之间互不影响。
  4. 全链路自动切换,每一个组件的状态都会自动检测,发生问题在10秒钟之内完成切换,保证直播流的连续性。
  5. 对于交互相对较少的赛事直播,所以会采用H264直播,进行的优化是,所有的切片输出的H264切片中,切片长度和I帧都是对齐的,好处是当下游想在不同码率之间切换的时候,画面是连续的,不会有跳跃感。
  6. 切片双写,每一路流在进行切片的时候,都是双进程切片,同时切到两个OSS,这样就保证了下游CDN的源是双份的。
  7. 考虑到赛事直播的重要性,整套架构在原来的基础上,同时做了中心异地备份。
    image

三、 CDN与客户端

  1. 配合OSS双写,CDN也同时支持两个OSS,并根据实时检测把好的切片拼成一路,任何一个OSS写异常、写的慢都不会影响内容的传输。
  2. 中心主备与L2灾备,由于CDN本身架构就是分布式的,考虑到世界杯的规模非常大,采用中心主备,如果CDN中心出现问题,会马上切换为另一个。另外,每个地区都会放多个L2节点,如果L2在某一时刻出现问题,会马上要附近的其他L2接入,不会因为异地影响服务质量。
  3. 采用节点内的负载均衡和CDN的调度优化方案,可以确保业务顺畅。
  4. 最后,给客户端一个建议,因为客户端很多,当前面的切换出现时,某些客户端可能会出现卡死无法播放等问题,所以客户端需要对CDN请求做一个重试。
    image

安全

世界杯赛事直播护航工作中,内容的安全和稳定同样重要。用户可以通过阿里云云导播台内容审核、源站IP推流和拉流的白名单设置、推流鉴权、拉流HTTPS校验防劫持等几个方案,来保障内容安全。针对类似世界杯赛事的版权内容,阿里云也提供播放鉴权&二次鉴权、DRM对视频本身鉴权、分域名封禁、区域限制等方案来防止盗播盗链。

监控

架构解决了稳定性问题,并在安全方面也做了很多准备之后,直播当然也需要监控,阿里云对于世界杯直播的监控分以下三大部分。

第一是技术环境的监控

包括直播中心、CDN每台设备的CPU使用率、内存、网络、磁盘等,如果出现故障情况,就和前面的方案配合进行自动切换;如果出现异常、亚健康的状态,则会通过报警让运维人员快速定位问题和快速处理。

第二是应用监控

包括每个程序的进程、端口、QPS压力、直播延迟,与前面环境监控的处理方式一样,如果出现故障,就和切换机制联动,如果出现异常则通过报警来人为处理。

第三是业务监控

包括直播全链路监控,下图是一张比较复杂的直播业务的监控图,绿色代表正常,黄色可能会出现丢帧、丢包等问题出现的异常线路。点开每一条线,就可以看到没路流在当前时间下的状态值,比如说时间戳一小时之内是否连续、递增和跳频,避免客户端兼容性问题引发的不好的用户体验。

image

对于帧率的监控,在视频云中心进行流合并的时候,我们实时地把不同的流合并成一个,来达到抗抖动的效果。下面四幅图是同一时间同一路流的监控,上面三路流合并成下面一路流,毛刺变少,结果更稳定。

image

除此之外,系统还会针对服务端慢速比、客户端卡顿率等数据,进行实时收集和监控,通过和客户端的联合,实现质量调优。

除了以上高稳定性的服务架构、多维度安全策略以及全链路监控以外,阿里视频云也为用户提供时移直播、智能剪辑、异地容灾、智能调度、秒开、码率控制、50帧极清、高速通道、防盗链、云导播台、广告识别、ET字幕等能力。

image

相信护航过世界杯直播之后,阿里视频云一定在活动、赛事直播这个场景下沉淀了更多技术,在未来为客户创造更多价值,为用户带来更极致的观看体验。

目录
相关文章
|
Web App开发 编解码 网络协议
LVS峰会 | 阿里云李刚:下一代低延时的直播CDN
在上周落幕帷幕的多媒体领域技术盛会——LiveVideoStackCon音视频技术大会上,阿里云的高级技术专家李刚进行了《下一代低延时的直播CDN》技术分享。主讲人李刚,多年关注在CDN这个领域,早期主要研究和cache服务器缓存以及流媒体相关的技术, 专注CDN文件分发、图片与大文件下载等业务。
5625 0
|
11月前
|
安全 数据库 数据安全/隐私保护
处理用户输入数据格式验证不通过的情况时,如何给出友好的提示信息?
处理用户输入数据格式验证不通过的情况时,如何给出友好的提示信息?
704 78
|
安全 算法 C++
专题九Simulink仿真基础-2
专题九Simulink仿真基础
381 1
|
12月前
|
机器学习/深度学习 存储 人工智能
智能体首次达到Kaggle Grandmaster水平,华为用结构化推理补齐思维链短板
近日,华为诺亚方舟实验室与伦敦大学学院(UCL)联合开发的智能体Agent K v1.0在Kaggle竞赛中达到Grandmaster水平,引发广泛关注。该智能体采用创新的结构化推理框架,优化长期和短期记忆,动态处理复杂推理任务。通过自动化协议,Agent K v1.0能自动完成数据收集、清理、预处理等任务,并在多种数据模态下取得优异成绩。其Elo-MMR评分位于前38%,获得多枚奖牌,展示了强大的预测和决策能力。这一突破为AI在数据科学领域的应用开辟了新可能,但也需关注其局限性和伦理影响。论文地址:https://arxiv.org/pdf/2411.03562。
340 22
|
11月前
|
人工智能 编解码 算法
全球顶级赛事实践:视频云制播在奥运赛事的关键技术与创新
本次分享主题为“全球顶级赛事实践:视频云制播在奥运等体育赛事的关键技术与创新”。内容涵盖视频云制播的整体技术框架、AI技术重构体育赛事全链路、视频云制播+AI的技术创新与应用、未来展望,以及央视频在奥运等赛事中的成功实践。通过阿里云和央视频的合作,展示了多语种解说、多视角同步、智能媒资管理等技术创新,提升了观众的观赛体验,并推动了体育赛事转播的智能化发展。
492 0
|
数据采集 缓存 安全
2024年最佳http 代理 IP选择及其价格分析
2024年,多家服务商如快代理、123Proxy、巨量代理、IPIDEA等提供不同类型的代理IP,以满足数据采集、跨境电商等多种需求。
2024年最佳http 代理 IP选择及其价格分析
|
存储 前端开发 JavaScript
State 状态管理最佳实践
【10月更文挑战第1天】本文深入浅出地介绍了前端开发中的状态管理概念,强调其在构建复杂单页应用(SPA)中的重要性。文章详细阐述了状态管理的核心原则,如单一源真理、状态不可直接修改及状态变更透明,并对比分析了如Redux、Vuex和MobX等常用状态管理库。通过具体代码示例,指出了状态分散和非原子操作等常见问题及其解决方案,为开发者提供了实用指导。
540 2
|
前端开发 Java C#
C#语言的优缺点?
C#语言的优缺点?
683 3
|
中间件 Go API
Golang深入浅出之-Go语言标准库net/http:构建Web服务器
【4月更文挑战第25天】Go语言的`net/http`包是构建高性能Web服务器的核心,提供创建服务器和发起请求的功能。本文讨论了使用中的常见问题和解决方案,包括:使用第三方路由库改进路由设计、引入中间件处理通用逻辑、设置合适的超时和连接管理以防止资源泄露。通过基础服务器和中间件的代码示例,展示了如何有效运用`net/http`包。掌握这些最佳实践,有助于开发出高效、易维护的Web服务。
281 1
|
存储 Unix 程序员
非常详细!操作系统基础【文件系统实现】
非常详细!操作系统基础【文件系统实现】