System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种视频流的获取方法、装置、设备和存储介质。
技术介绍
1、内容分发网络(content delivery network,简称cdn)系统作为超大规模的分布式系统,已经成为互联网基础设施,其在网络直播等应用场景中发挥着重要作用。内容分发网络系统主要用于将视频流分发给播放端,以便播放端进行播放。目前,为了提升用户的观感体验,可以在内容分发网络系统中增设预推服务器集群,在分发视频流时,先将视频流分发给预推服务器集群中的预推服务器,再由播放端从预推服务器中拉取视频流并且进行播放。相较于播放端而言,预推服务器集群中的预推服务器可以利用其优越的性能和网络环境,以较快速度下载并缓存到视频流,这样,预推服务器就起到了中间预缓存的作用,可以有效缩短播放端获取视频流的时间,而且,在面对大规模用户访问时,预推服务器集群还可以起到负载均衡的效果,避免发生因为用户请求压力过大造成的服务中断问题,从而实现了利用预推服务器集群为用户提供低延时的稳定服务的目的。
2、但是,随着预推服务器集群的不断运行,预推服务器集群中的各个预推服务器的性能会出现差异,而播放端无法得知每个预推服务器的性能状态,如果播放端从性能较差的预推服务器拉取视频流,将会导致视频流的拉取速度较慢,甚至会出现播放卡顿的问题。
技术实现思路
1、本申请提供了一种视频流的获取方法、装置、设备和存储介质,以解决如果播放端从性能较差的预推服务器拉取视频流,将会导致视频流的拉取速度较慢的问题。
2、针对上
3、本申请实施例提供了一种视频流的获取方法,每个预推服务器执行的步骤,包括:在所述预推服务器缓存内容分发服务器发送的视频流的过程中,接收播放端针对所述视频流发出的鉴权请求;在基于所述鉴权请求确定鉴权通过之后,根据所述预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据;根据所述预推服务器对应的性能指标数据以及所述预推服务器对应的历史性能健康度,确定所述预推服务器对应的当前性能健康度;将所述预推服务器对应的当前性能健康度发送给所述播放端,以便所述播放端根据多个所述预推服务器分别对应的当前性能健康度选择从其中一个预推服务器获取视频流。
4、其中,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:在所述预推服务器从内容分发服务器接收视频流的过程中,确定相邻两帧视频图像之间的帧间隔和接收间隔;其中,所述预推服务器将接收到的视频图像缓存到预设的缓存空间中;确定所述缓存空间中已缓存的视频流对应的缓存总时长;根据所述帧间隔、所述接收间隔和所述缓存总时长,确定所述预推服务器对应的下行性能指标值。
5、其中,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:确定所述预推服务器与内容分发服务器之间的当前会话连接数量以及历史会话连接数量;根据所述当前会话连接数量和所述历史会话连接数量,确定所述预推服务器对应的上行性能指标值。
6、其中,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:获取所述预推服务器与播放端之间的可用网络连接数量和最大网络连接数量;根据所述预推服务器与播放端之间的当前网络连接数量以及所述可用网络连接数量,确定所述预推服务器与播放端之间的剩余网络连接数量;根据所述剩余网络连接数量和所述最大网络连接数量,确定所述预推服务器对应的负载性能指标值。
7、其中,所述确定所述预推服务器与播放端之间的可用网络连接数量和最大网络连接数量之前,还包括:在时间连续的每个预设统计时间段内,查询所述统计时间段内的各个预设统计时间对应的网络连接数量;根据所述统计时间段内的各个所述统计时间对应的网络连接数量,确定所述统计时间段内的网络连接数量最大值并且确定所述统计时间段内的平均网络连接数量;将所述网络连接数量最大值确定为下一个所述统计时间段内使用的所述最大网络连接数量,并且,将所述平均网络连接数量确定为下一个所述统计时间段内使用的所述可用网络连接数量。
8、其中,所述性能指标数据,包括:至少一个性能指标值;所述根据所述预推服务器对应的性能指标数据以及所述预推服务器对应的历史性能健康度,确定所述预推服务器对应的当前性能健康度,包括:获取每个所述性能指标值对应的权重值并且获取所述预推服务器对应的α平滑系数;利用每个所述性能指标值对应的权重值,确定各个所述性能指标值的加权平均值;利用所述预推服务器对应的α平滑系数,对所述加权平均值和所述历史性能健康度进行α平滑滤波处理,得到所述预推服务器对应的当前性能健康度。
9、本申请实施例还提供了一种视频流的获取方法,播放端执行的步骤,包括:向多个预设预推服务器分别发送视频流对应的鉴权请求;针对每个所述预推服务器,在确定所述预推服务器基于所述鉴权请求确定鉴权通过之后,获取所述预推服务器返回的当前性能健康度;根据多个所述预推服务器分别对应的当前性能健康度的大小,从其中一个所述预推服务器获取所述视频流。
10、其中,所述根据多个所述预推服务器分别对应的当前性能健康度的大小,从其中一个所述预推服务器获取所述视频流,包括:在从当前所述预推服务器获取所述视频流的过程中,保活与其他所述预推服务器分别建立的网络连接;如果检测到所述视频流获取异常,则根据其他所述预推服务器分别对应的当前性能健康度的大小,选择下一个所述预推服务器并且从下一个所述预推服务器继续获取所述视频流。
11、本申请实施例还提供了一种视频流的获取装置,所述视频流的获取装置设置在预推服务器,包括:第一接收模块,用于在缓存内容分发服务器发送的视频流的过程中,接收播放端针对所述视频流发出的鉴权请求;第一确定模块,用于在基于所述鉴权请求确定鉴权通过之后,根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据;第二确定模块,用于将所述预推服务器对应的当前性能健康度发送给请求播放所述视频流的播放端,以便所述播放端根据所述预推服务器对应的当前性能健康度执行视频流获取任务;第一发送模块,用于将所述预推服务器对应的当前性能健康度上报给调度服务中心;所述视频流的获取装置设置在播放端,包括:第二发送模块,用于向多个预设预推服务器分别发送视频流对应的鉴权请求;第二接收模块,用于针对每个所述预推服务器,在确定所述预推服务器基于所述鉴权请求确定鉴权通过之后,获取所述预推服务器返回的当前性能健康度;视频获取模块,用于根据多个所述预推服务器分别对应的当前性能健康度的大小,从其中一个所述预推服务器获取所述视频流。
12、本申请实施例还提供了一种视频流的获取设备,包括:至少一个通信接口;与所述至少一个通信接口相连接的至少一个总线;与所述至少一个总线相连接的至少一个处理器;与所述至少一个总线相连接的至少一个存储器,其中,所述处理器被配置为:执行所述存储器中存储的预推服务器的连接程序,以实现上述任一项在预推服务器执行的所述视频流的获取方法,或本文档来自技高网...
【技术保护点】
1.一种视频流的获取方法,其特征在于,每个预推服务器执行的步骤,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
3.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
5.根据权利要求4所述的方法,其特征在于,所述确定所述预推服务器与播放端之间的可用网络连接数量和最大网络连接数量之前,还包括:
6.根据权利要求1所述的方法,其特征在于,
7.一种视频流的获取方法,其特征在于,播放端执行的步骤,包括:
8.根据权利要求7所述的方法,其特征在于,所述根据多个所述预推服务器分别对应的当前性能健康度的大小,从其中一个所述预推服务器获取所述视频流,包括:
9.一种视频流的获取装置,其特征在于,
10.一种视频流的获取设
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被执行,以实现权利要求1-6中任一项在预推服务器执行的所述视频流的获取方法,或者,实现权利要求7-8中任一项在播放端执行的所述视频流的获取方法。
...【技术特征摘要】
1.一种视频流的获取方法,其特征在于,每个预推服务器执行的步骤,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
3.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据预推服务器的通信缓存数据,确定所述预推服务器对应的性能指标数据,包括:
5.根据权利要求4所述的方法,其特征在于,所述确定所述预推服务器与播放端之间的可用网络连接数量和最大网络连接数量之前,还包括:
6.根据权利要求1所述的方法,其特征在于,
7.一种视频流的获取方法,其特征在于,播放端执行的步骤,包括:
8.根据权利要求7所述的方法,其特征在于,所述根据多个所述预推...
【专利技术属性】
技术研发人员:洪润琦,周志伟,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。