关于架构设计:2020中国系统架构师大会活动回顾ZEGO实时音视频服务架构实践


10月24日,即构科技后盾架构负责人&高级技术专家祝永坚(jack),受邀加入2020中国零碎架构师大会,在音视频架构与算法专场进行了主题为《ZEGO实时音视频服务架构实际》的技术分享。

以下为演讲内容的节选:

作为一家业余的音视频云服务商,即构服务了泛娱乐、在线教育、金融、产业互联网、IoT等行业的多家头部公司,例如映客、花椒、微博、好将来等。往年上半年受疫情影响,即构所服务的多家教育、泛娱乐客户都呈现了流量暴增的景象。而即构提供的稳固后盾服务,保障了客户线上业务0故障经营,这离不开咱们成熟稳固、可用性高、能主动扩容的流媒体服务架构。

上面我从ZEGO流媒体服务简介、流媒体服务架构、调度逻辑设计和经营监控四局部进行分享:

一、ZEGO流媒体服务介绍

以这张图为例,咱们来看ZEGO流媒体服务的全貌:

假如图中有三位主播A,B,C和观众,主播A,B,C要进行连麦互动,他们别离通过浏览器、原生App和微信/QQ小程序来推流。因为主播应用了不同的终端模式来进行推流,那么底层应用的音视频协定也是不同的,别离对应着WebRTC,AVERTP(ZEGO的公有音视频协定),RTMP。

主播之间连麦互动须要相互拉流,为了取得良好的互动成果,须要很低的端到端拉流提早(<400ms)。因而,主播们能够到即构寰球实时网络来进行拉流,反对Web终端,和原生App拉流,国内的理论环境端到端提早能够做到150-400ms。

而观众,因为量比拟大,须要思考老本,同时他不须要互动,能够承受较高的提早。因而能够思考从即构寰球实时网络转推一路RTMP协定的码流到第三方CDN,观众再从CDN去拉流。

当然,如果观众也要很低的提早,那么也能够从咱们的实时网络拉流。此外,一些原来应用RTMP的客户,还能够通过第三方利用通过OBS来推流,很轻易的迁徙到即构寰球实时网络,用户就能够实现在寰球区域范畴内进行低提早的音视频互动。

介绍完次要流媒体服务的全流程后,咱们来看流媒体服务蕴含的具体职责:

调度:在用户推拉流前,须要发动调度申请,取得一个资源后才可能发动理论的码流推拉。用户体验的好坏,跟调度策略有很大关系。

理论推拉流:咱们适配了RTMP,WebRTC,AVERTP等多种协定的推拉流规范,提供了更优的流控等算法。

转推CDN:即构寰球实时网络和第三方的CDN须要进行合作来满足客户的多样化场景需要。

转码:RTMP应用的AAC音频编码,WebRTC应用的Opus音频编码,这两种格局互通,须要对音频进行转码。

转协定:咱们RTMP和WebRTC是以网关的模式存在的,两头的网络传输都是以咱们的AVERTP协定来进行。

目前咱们反对H264,H265,VP8 3种格局的视频编码转码;AAC, Opus,SILK 3种格局的音频转码;RTMP、WebRTC、AVERTP3种协定格局的转协定。

混流:当呈现多个主播连麦互动时,观众如果别离去拉主播的流,对带宽老本和用户的设施都有很高的要求。咱们会让服务器混合成一条流,观众只须要拉混合后的流即可。

流治理:推拉流鉴权,禁推治理,咱们提供了业务经营必须的多种流治理性能。

即构实时音视频服务的劣势体现在4个方面:

第一,多云商架构设计
咱们设计之初就确定了反对多云商的架构设计。不同云商有着不同的劣势,他的数据中心和网络资源人造的存在着差异性,a云商在印度南部笼罩品质好,b云商在印度北部笼罩品质好。那么咱们就都用起来,让a云商笼罩印度南部,b云商笼罩印度北部,从而让整体取得更好的接入品质。

第二,高可用设计保障品质
咱们架构设计上加进了许多高可用的计划,来保障稳固的服务质量,前面会开展。

第三,弱网下抗丢包能力强
咱们自研的音视频引擎,在弱网下的体现更优异,能实现“上/上行70%丢包下,放弃10-15帧视频晦涩通话;上/上行80%丢包下,放弃音频晦涩通话”。

第四,低提早大规模散发
利用ZEGO自研引擎,咱们做了低提早大规模散发的流媒体服务架构设计,能极大的进步后盾并发能力。

(未完待续……)

鉴于分享内容较丰盛,更多ZEGO实时音视频服务架构实际中的“流媒体服务架构设计、调度逻辑设计以及经营监控”等内容,能够扫描下方二维码获取演讲材料包,蕴含演讲文字稿、演讲PPT以及即构寰球次要国家的端到端提早实测数据。

【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年50元

阿里云限时活动-2核2G-5M带宽-60G SSD-1000G月流量 ,特惠价99元/年(原价1234.2元/年,可以直接买3年),速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表评论

您的电子邮箱地址不会被公开。

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据