【技术实现步骤摘要】
一种动态周期的媒体服务器负载均衡算法
本专利技术涉及服务器集群负载均衡技术的算法领域,特别涉及一种基于加权一致性哈希算法的改进负载均衡算法。
技术介绍
随着互联网技术的普及和发展,互联网用户快速增加,同时新媒体不断涌现,更多的人开始使用互联网来观看视频或直播、进行网络会议、视频互动等。传统视频直播和会议软件采用C/S架构,近年来随着以HTML5为代表的Web技术的高速发展,基于Web浏览器的B/S架构直播日渐兴起。WebRTC(WebReal-TimeCommunication,网页实时通信)是一种不必使用插件就可以在浏览器之间进行实时通信的开源技术.目前大多数主流浏览器(例如Chrome、Firefox、Safari等)都已支持WebRTC功能,WebRTC建立实时通信主要包括两个步骤:信令交互和媒体传输。信令交互方面开发者可以根据需要选用合适的协议(JSON、SIP等);媒体传输常用P2P方式传输媒体流,当用户量较高而P2P不能满足并发需求时,则采用媒体服务器转发方式扩展并发量。KurentoMediaS ...
【技术保护点】
1.一种动态周期的媒体服务器负载均衡算法,其特征在于,包括如下步骤:/n(1)收集服务器节点的初始处理能力,参数包括服务器的CPU、内存、带宽;计算出节点的初始权重K0,初始化负载均衡服务;/n(2)每个周期内,通过负载均衡器收集服务器节点的负载信息,参数包括包括CPU利用率、内存利用率、带宽利用率、任务请求数;/n(3)根据步骤(2)中收集到的负载信息,进行加权平均,节点权值之和为1,计算出每个服务器节点的总负载L(i),其中i为当前节点,取值为1-N,N是服务器节点总个数;/n(4)根据负载参数动态调整周期值,实现周期随负载变化的动态更新;/n(5)Nginx中实现自定 ...
【技术特征摘要】
1.一种动态周期的媒体服务器负载均衡算法,其特征在于,包括如下步骤:
(1)收集服务器节点的初始处理能力,参数包括服务器的CPU、内存、带宽;计算出节点的初始权重K0,初始化负载均衡服务;
(2)每个周期内,通过负载均衡器收集服务器节点的负载信息,参数包括包括CPU利用率、内存利用率、带宽利用率、任务请求数;
(3)根据步骤(2)中收集到的负载信息,进行加权平均,节点权值之和为1,计算出每个服务器节点的总负载L(i),其中i为当前节点,取值为1-N,N是服务器节点总个数;
(4)根据负载参数动态调整周期值,实现周期随负载变化的动态更新;
(5)Nginx中实现自定义负载均衡算法模块,实现加权一致性哈希算法;
(6)动态调整加权一致性哈希算法的权值向量,更新算法中的服务器节点权值;
(7)Nginx负载均衡器根据加权一致性哈希算法寻找后端可用服务器节点,将任务请求分配到可用节点进行并发处理。
2.根据权利要求1所述的一种动态周期的媒体服务器负载均衡算法,其特征在于,所述步骤(4)中,周期值的调整方法为:利用二次指数平滑法,通过每秒任务请求数的历史数据,预测下个周期的每秒任务请求数,从而计算下一个周期的周期长度,当预测请求数较高时,周期缩短;预测请求数较低时,周期延长;所述的周期长度pt+1为:
其中周期长度pt+1以初始周期8s为基础,取值范围为[6,15]以内的整数,非整数向下取整,低于6s时取值为6s,高于15s时取值为15s;Y为理想并发量,Yt+1为通过二次指数平滑模型预测出的周期t+1内的请求数。
3.根据权利要求2所述的一种动态周期的媒体服务器负载均衡算法,其特征在于,预测请求数Yt+1的计算过程为:
Yt+1=at+bt
其中是周期t时任务请求数的一次平滑值;yt是周期t时任务请求量的实际值;是上个周期的一次平滑值,初始值取为前两个数据平均值;A是平滑常数,取值为0.6;
是周期t时任务请求数的二次平滑值;是上个周期的二次平滑值,初始值取为前两个数据平均值,at和bt为二次平滑模型的参数变量。
4.根据权利要求1所述的一种动态周期的媒体服务器负载均衡算法,其特征在于,所述步...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。