携手听云,搜狐千帆直播流畅用户体验背后的APM实践
2017-11-10 16:57:26 来源:中国网 评论:

2016年的直播行业俨然已经成为了互联网领域的现象级风口,有数据指出,截止到2016年6月,中国网络直播用户规模达到3.25亿,占网民总体的45.8%。同时,资本的快速注入给直播产业带来了急速的发展,据不完全统计,国内现在共有规模不同的300多家直播平台。但是从现在看来,虽然直播的风口期依然存在,但是直播内容的高度同质化和用户群的相同,决定了这个行业势必将迎来一波重新洗牌,因此现在更多的直播平台将竞争更多的集中于各个细分领域,如游戏直播、秀场直播、体育直播等等,各家直播平台也在自己的领域下纷纷布局。

搜狐千帆直播就在这样的市场环境中不断前进,搜狐千帆直播是由搜狐视频的技术团队创建的,继承了搜狐在自媒体视频领域的技术和产品优势,将视频点播业务转化为视频直播模式,使搜狐的娱乐属性和媒体属性在移动互动时代得以加强。

一、直播行业目前的挑战

作为直播业务,用户大体上分为主播和观众两类,良好的用户观看体验是由主播和用户两端共同决定的,假如主播端推流不稳定,用户端网络再好也是无济于事的。因此直播平台对于“用户体验”的要求不同于其他产业,“齐头并进,两头兼顾”是直播平台打造良好用户观看体验的重要方向。考虑到这样的问题存在,千帆直播分别为为主播端和客户端设立了两套不同的问题解决方案:

主播端:

现在是全民直播时代,所以网络主播所处的个人网络环境良莠不齐,无法保证推流稳定性。但是在直播场景中,需要保持良好的视觉和听觉感受,需要保持音视频直播流稳定,减少卡顿次数。一旦推流不成功或者推流过程中出现了异常,主播就无法正常开播。为此千帆直播做了多路上行线路,根据“最佳寻址算法”,找到主播端最优的链路,同时根据“最佳码率算法”,确定最稳定的动态码率和分辨率,以保证直播流上行成功。

直播一定要具有实时性,因此对于主播端所看到的直播间的弹幕、礼物、消息等互动内容要持续保持低延迟高可用。但是在高并发场景下,主播端的信息吞吐量巨大。无论是PC还是APP,都会出现消息堆积、显示不全或者不及时现象,这就需要从产品技术角度减少误差。也因此千帆直播设计了“WebSocket信号保护系统”、“消息均衡算法”以及“多任务归并算法”等等逻辑,保证就算出现井喷式的流量爆发也不至于出现堆积卡死现象。

观众端:

观众需要极致的访问观看速度,在2015年搜狐千帆直播平台初创时,就围绕直播“秒开”做研究,目前基本实现了高速网络下的“秒开”。但是挑战依然继续,就是在弱网环境、窄带环境、高速运动环境下,是否有更加稳定不丢包的直播流传输技术呢,因为每出现一秒的卡顿,都会导致大量用户流失,为此千帆直播做了多CDN策略,以保证CDN的资源稳定。

直播相较于视频点播,观众的存在感是决定性因素之一,换句话说直播就是互动,对观众来说,与主播的互动、与其他观众的互动是他们观看直播的目的之一。因此需要像社交平台一样,在一位用户发出弹幕的时候,要尽可能的减少其他用户看到此条弹幕的延迟,时刻保持高实时性。这就对整个直播平台的技术架构提出了很高的要求,需要保持高可用低延迟,发出去的数据包不能有损耗有丢失,接受到的数据包也不能被劫持被篡改。

二、千帆直播的后台体系建设

千帆直播平台后台体系

这里我们看下搜狐千帆直播的后台架构是如何应对并解决上述挑战的,千帆直播包括五大核心业务:基础业务、视频业务、数据业务、运营业务、监控业务。在千帆直播创立初期秉承的是敏捷开发模式,在设计架构时采用了SOA(面向服务的架构),从而使得各个核心业务以及内部子业务都形成独立服务,并且互不干扰,在开发和部署时,能够保持水平和垂直两个方向都可以扩展。

本文为商业文章仅代表作者独立观点,并不代表本网赞同其观点和对其真实性负责,请读者仅作参考,并请自行核实相关内容。若有疑问请来函与本网联系:banquan@cbnet.com.cn。