新闻资讯

新闻资讯 行业动态

直播下的服务器压力

编辑:008     时间:2020-02-14

直播下的服务器压力

直播类的应用对于服务器的要求要高过一般的应用,我们来看看直播类的应用对服务器有哪些更多的挑战?

更大的数据量

视频数据和文本数据完全是两个量级的概念,假设一个直播房间有5000人,视频1s的数据60K,那么就需要5000*60=300000KB=292.97MB,基本已经达到了2-3三个手游的大小了,而这只是一个房间产生的流量。今年4月刘涛入驻直播领域,创造了同时在线人数17万,总收看人数71万的数据,如果按照这个数量,服务器就会产生9.73Gbps的带宽,而当前某著名网络直播APP日活跃用户超过了800W,服务器将承受458Gbps的带宽压力。

更高的并发量

不同于普通应用和游戏,直播类应用的使用时间段非常的集中,一般来说,社交类的直播app时间集中在晚饭后时间至睡前20点~23点,游戏类App活跃时间集中在下班后18~20点间,秀场类App集中在13点和18(午休及下班时间),因此在这短短几小时之间,会涌入大量的用户,一次大V的直播通常就会造成百万级的用户登录,APP需要有详尽的限流、分流和负载均衡策略,保证服务器不会被冲垮。

更真实的用户登录场景

直播应用与普通应用相比,交互的功能异常多,除了直播视频流的服务器压力之外,还要包括用户消息推送、聊天、礼物、支付以及统计系统带来的数据交互压力,服务器进行需要识别不同的业务字段,才能精确判定用户的行为是否成功完成,从交互频率的角度上来说,直播类的应用,与其说更像应用,不如说更像游戏。

更低的延迟

直播需要一个很强的即时性,如果主播的行为和用户的评论无法同步的时候,会给用户非常不好的体验,如果一个用户发现其他用户在欢呼鼓掌,但是屏幕中的主播什么动静都没有的时候,这个直播应用基本可以不要再用了,因此直播类应用不仅需要面对更大的数据量和更高的并发,还要保证更低的延迟。通常可以要保证服务器的处理数据速度要快,要有足够强大的带宽;另外则是通过P2P算法保证数据分享的合理性,保证服务器的数据和P2P的数据可以达到平衡。

直播前的服务器准备

直播应用下的服务器成本,与将要承受的流量情况息息相关,不同的直播应用,交互的频度、深度不同,就会产生不同的带宽压力。我们一起来算一笔帐,为直播应用准备服务器,大概需要多少钱?

首先,我们要买一个服务器。买多大的服务器呢?服务器的带宽要满足直播应用的带宽需求,在这里,科普一下带宽是怎么看的:
带宽通常使用的单位是bps(bits per second),8 bits通常等于1Byte,100Mbps在换算成我们熟悉的文件大小的时候,要除以8,也就是在100Mbps的带宽下,每秒钟可以下载12.5MB的文件,那么一般来说,直播应用需要多少带宽呢?见下图:

直播应用一般使用的分辨率是360p,720p以及1080p三种,为了看得清晰一些,一般人们都会选择720p,那么在720p的清晰度下,直播应用需要1024kbps的带宽,也就是每秒传递的数据大小为1024/8=128KB。简单来说,如果在APP中打开直播,使用了720p的分辨率,一个用户每秒钟需要传输128KB的数据(当然实际情况中直播应用还有消息推送,送礼,支付等行为,直播画面分辨率、压缩比等区别,实际会消耗更多的数据)。

那么,直播类应用现在需要承载多少用户呢?
以目前最红火的几大直播平台为例,斗鱼 TV 的在线人数可以超过1000 万,战旗 TV 在在线人数约500 万左右,龙珠在线人数约 400 万左右,虎牙在线人数约100万,直播平台的带宽成本通常是带宽峰值月结的形式,如果当月最高同时在线人数是200W,也就是每秒要传输的数据量高达244GB,那么理论上消耗的带宽就是2T左右,一个月的开销就在4000W人民币左右。

对于直播应用来说,服务器最难处理的环节就是视频流量和用户交互等高频率高带宽的场景,用户的行为是难以预测的,经常会出现突发性的暴涨,一般在进行活动的时候,流量可能是平时的几十倍。2016年7月11日,PAPI酱的一次直播带来了超过2000W用户的访问,这对于大多数的直播应用来说,服务器的成本都是难以承担的。这也是为什么越来越多的直播应用开始寻求云服务器的支持,目前的云服务商有腾讯云,阿里云,百度云,金山云等,彼此之间在硬件上的类型差别越来越小。

因此直播应用在上线前需要对多样化的用户操作进行针对性的测试,注册,聊天,礼物,支付等行为都需要进行不同接口的测试,NOW直播就是其中之一。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

回复列表

相关推荐