本文共 2872 字,大约阅读时间需要 9 分钟。
今年夏天,俄罗斯世界杯召开。在刚刚落幕的重庆云栖飞天技术汇专场中,阿里视频云技术专家裘良科,就世界杯这个话题,跟参会嘉宾一起探讨了千万级直播高稳定的挑战和相关实践,本文为演讲全文。
2018年俄罗斯世界杯从6月14日到7月15日,跨度整整一个月,共有64场比赛,优酷成为央视指定的世界杯新媒体官方合作伙伴,作为优酷的同门兄弟,阿里云也一并为世界杯直播的提供技术支持,一同征战世界杯。 整个世界杯期间,阿里云的服务是不间断的,要始终保持着稳定与流畅。而且除了支持优酷外,阿里云同时支持着CCTV5、CNTV、咪咕的世界杯直播,支撑了全网世界杯流量的70%。单单优酷的法阿大战单场并发就达到2000W,加上其他的几家客户,足足有数千万的用户并发。这么大规模、持久的赛事,对直播平台也是很大的挑战。
在这样的挑战之下,阿里云要始终保持着世界杯直播的稳定、流畅、安全,背后有一套复杂的方案和逻辑,下面我们来从稳定性、安全、监控三个部分展开。
下图是世界杯直播稳定性架构图,分为四大部分,信源生产链路、视频云中心、CDN和客户端。
第一部分是信源生产链路,因为最原始的信号很有可能不被云平台使用,比如非常高码率的信号,不适合传输,所以一般都会有信源生产的链路进行编码,提供一个源站服务。第二部分是视频云中心,整个直播平台架构是中心架构,所有直播所需要的功能,比如转码、截图、录制、水印等功能,都是在中心完成的。第三部分是CDN,CDN是真正承载整个世界杯直播的用户压力的一环,数千万的用户都跑在CDN上。第四个部分是客户端。接下来分各个环节来介绍阿里云如何保障服务稳定。
世界杯赛事直播护航工作中,内容的安全和稳定同样重要。用户可以通过阿里云云导播台内容审核、源站IP推流和拉流的白名单设置、推流鉴权、拉流HTTPS校验防劫持等几个方案,来保障内容安全。针对类似世界杯赛事的版权内容,阿里云也提供播放鉴权&二次鉴权、DRM对视频本身鉴权、分域名封禁、区域限制等方案来防止盗播盗链。
架构解决了稳定性问题,并在安全方面也做了很多准备之后,直播当然也需要监控,阿里云对于世界杯直播的监控分以下三大部分。
包括直播中心、CDN每台设备的CPU使用率、内存、网络、磁盘等,如果出现故障情况,就和前面的方案配合进行自动切换;如果出现异常、亚健康的状态,则会通过报警让运维人员快速定位问题和快速处理。
包括每个程序的进程、端口、QPS压力、直播延迟,与前面环境监控的处理方式一样,如果出现故障,就和切换机制联动,如果出现异常则通过报警来人为处理。
包括直播全链路监控,下图是一张比较复杂的直播业务的监控图,绿色代表正常,黄色可能会出现丢帧、丢包等问题出现的异常线路。点开每一条线,就可以看到没路流在当前时间下的状态值,比如说时间戳一小时之内是否连续、递增和跳频,避免客户端兼容性问题引发的不好的用户体验。
对于帧率的监控,在视频云中心进行流合并的时候,我们实时地把不同的流合并成一个,来达到抗抖动的效果。下面四幅图是同一时间同一路流的监控,上面三路流合并成下面一路流,毛刺变少,结果更稳定。
除此之外,系统还会针对服务端慢速比、客户端卡顿率等数据,进行实时收集和监控,通过和客户端的联合,实现质量调优。
除了以上高稳定性的服务架构、多维度安全策略以及全链路监控以外,阿里视频云也为用户提供时移直播、智能剪辑、异地容灾、智能调度、秒开、码率控制、50帧极清、高速通道、防盗链、云导播台、广告识别、ET字幕等能力。
相信护航过世界杯直播之后,阿里视频云一定在活动、赛事直播这个场景下沉淀了更多技术,在未来为客户创造更多价值,为用户带来更极致的观看体验。
转载地址:http://zwgvl.baihongyu.com/