CN102215163B - 一种多服务器视频点播处理方法 - Google Patents
一种多服务器视频点播处理方法 Download PDFInfo
- Publication number
- CN102215163B CN102215163B CN201110072534.1A CN201110072534A CN102215163B CN 102215163 B CN102215163 B CN 102215163B CN 201110072534 A CN201110072534 A CN 201110072534A CN 102215163 B CN102215163 B CN 102215163B
- Authority
- CN
- China
- Prior art keywords
- server
- queue
- video
- request
- skip
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims description 10
- 238000012546 transfer Methods 0.000 abstract description 8
- 238000012545 processing Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Images
Abstract
本发明公开一种多服务器视频点播处理方法。该方法包括:预先设置视频点播队列数据结构;计算第一服务器的负载与其网格邻域服务器的差值;将差值与非平衡阈值Δ比较,决策出最小转移耗费的队列数据转移方式,实现第一服务器负载的局部平衡;针对其他服务器执行同样操作,完成所有服务器队列的数据转移与更新。本发明技术方案通过队列的数据转移实现网格内数据流通,实现了服务器队列负荷平衡,避免拥塞,同时提高点播成功概率,加上对等待超时、点播完成和所有服务器超负荷的情况处理,因此可以提高管理性能。
Description
技术邻域
本发明涉及数字家庭技术领域,具体涉及一种多服务器视频点播处理方法。
背景技术
当今技术不断发展,人们对于影音娱乐的需求也越来越大。在数字家庭时代,人们能够通过数字电视进行双向互动,通过数字电视浏览网页、预定机票、预约挂号、缴纳费用等等。不仅如此,电视的显示效果也从标清达到高清显示,给人们带来了极大的娱乐享受。
视频点播业务(Video On Demand,VOD)是其中一项十分重要的业务。通过视频点播,用户能够观看到精彩的影片,错过的精彩赛事,录下的节目等等。然而,发明人发现:由于视频点播相当频繁,用户的排队时间会较长,服务器的点播压力也十分之大。在既定网络带宽的情况下,如何管理点播队列是提高点播服务质量的一个重要问题。
发明内容
本发明要解决的技术问题是提供一种多服务器视频点播处理方法,能减少服务器的负担,提高效率。
为解决上述技术问题,本发明提供以下技术方案实现:
本发明提供一种多服务器视频点播处理方法,包括:
预先设置视频点播队列数据结构;
计算第一服务器的负载与其网格邻域服务器的差值;
将差值与非平衡阈值Δ比较,决策出最小转移耗费的队列数据转移方式,实现第一服务器负载的局部平衡;
针对其他服务器执行同样操作,完成所有服务器队列的数据转移与更新。
可选的,所述视频点播队列中的元素包括:要点播视频的信息、目标服务器信息、当前状态信息、排队时间。
可选的,每一个服务器维护一个点播请求队列表。
可选的,所述方法还包括:
首先检测队列元素状态,若队列数据元素点播成功,则作出相应反馈后,将该元素移出队列;
若元素在网格内的时间过长,即等待时间过长,为避免无限循环耗费服务器时间,将此元素移出队列。
可选的,所述方法管理多服务器视频点播队列过程如下:
步骤①:是否有新的点播请求,如果否,则跳至步骤③;
步骤②:将请求加入到队列中;
步骤③:某服务器队列是否超载,如果否,则跳至步骤⑤;
步骤④:转移该服务器队列数据,跳至步骤①;
步骤⑤:某服务器队列元素是否超时,如果否,则跳至步骤⑦;
步骤⑥:移出超时元素并做反馈,跳至步骤①;
步骤⑦:某队列元素是否点播成功,如果否,则跳至步骤⑨;
步骤⑧:将元素移出队列并做反馈,跳至步骤①;
步骤⑨:是否所有服务器队列超载,如果否,则跳至步骤①;
步骤⑩:移出等待时长最大的元素并反馈,跳至步骤①。
上述技术方案可以看出,本发明具有以下有益效果:
在本发明方法中,通过队列的数据转移实现网格内数据流通,实现了服务器队列负荷平衡,避免拥塞,同时提高点播成功概率,加上对等待超时、点播完成和所有服务器超负荷的情况处理,因此可以提高管理性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本邻域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明多服务器视频点播队列网格状态示意图;
图2是本发明多服务器视频点播队列网格内的数据移动示意图;
图3是本发明多服务器视频点播队列元素点播成功、超时与超载处理示意图;
图4是本发明多服务器视频点播队列的管理流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本邻域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种多服务器视频点播处理方法,将多服务器的视频点播队列网格化,通过网格内各服务器点播队列的数据转移,提高网格内队列的流通性,保持各服务器之间队列的平衡,同时对超时或超载进行减负处理,从而尽量避免点播拥塞的发生。
本发明能够在一定网络带宽请求繁忙的情况下尽量避免由频繁点播服务器造成的拥塞出现,尽量避免过度频繁点播对服务器造成的损害,提高视频点播成功率与降低点播耗费时间。
以下结合附图对本发明实施例进行详细介绍。
图1是本发明多服务器视频点播队列网格状态示意图。
1、多服务器视频点播队列网格状态
多服务器视频点播队列网格状态主要是描述各服务器当前点播队列的状况。首先,要设计好描述状态的数据结构。
(1)视频点播队列数据结构
视频点播队列数据结构是指设定数据结构以描述队列信息。视频点播队列中的元素应当包括:要点播视频的信息、目标服务器信息、当前状态信息、排队时间。视频点播队列元素数据结构可以定义为:
其中VideoInfo是点播视频的信息,可以简单地定义为:
变量videoid表征视频的id,变量videoname表征视频名称的字符串值,变量time表征视频的时间长度,同时可以包括其他的相关变量。
ServerInfo表示服务器的信息,可以简单地定义为:
变量videoid表征视频服务器的id,ip表征服务器的Internet地址,throughput表征服务器的吞吐量,反应当前服务器是否繁忙,performance表征服务器的性能等级作为选择的参考。
StateInfo表征队列元素的状态信息,可以定义为:
typedef State Info int;
state表示当前元素的状态,分为等待、超时、完成、即将被移除四种状态。若点播请求接受并获得视频播放,则状态定为完成;若等待时间超过设定值,则状态定为超时;若等待时间未超过设定值但服务器发生超载在最长等待时间之列,则状态定为即将被移除;若否则状态被定为等待。等待、超时、完成和即将被移除分别表示为0x01、0x10、0x20和0x40四个值。
clock_t applytime表示视频点播请求到达服务器的时间。此变量是确定队列元素状态的依据。以当前的时间值减去applytime的值,则可以得到点播请求的等待时间。
以上各个变量是为后面的数据移动或元素移出队列提供信息依据。
(2)网格的表征意义
每一个服务器都维护着一个点播请求队列表,如图1所示,直线表示服务器,每一条直线中,流入部分的表示未达的点播请求,流出方向表示已经完成点播请求并进行视频播放,网格上的边即标有queue1、queue2、queue3和queue4等字样的线段表示当前服务器维护的点播请求队列,各个服务器的队列数据可以通过各个交汇点转移,达到数据流通与服务器负载平衡的目的。
上述图1形象的展现了当前所有服务器的状态并反应了服务器的局部邻域关系,是后面的数据移动的依据。
图2是本发明多服务器视频点播队列网格内的数据移动示意图。
2、多服务器视频点播队列网格内的数据移动
多服务器视频点播队列网格内的数据移动可以由以下的步骤实现:
①计算服务器1的负载与其网格邻域服务器的差值;
②差值与非平衡阈值Δ比较,决策出最小转移耗费的队列数据转移方案,实现服务器1负载的局部平衡;
③针对其他服务器实现同样的局部平衡,完成所有服务器队列的数据转移与更新。
具体来说如图2所示,具体执行如下所述:
queue1所在的直线与queue2、queue3、queue4、queue5和queue6所在的直线分别相交。当queue1与其相交的直线的queue不平衡时,即相当于queue1所在的服务器与其局部邻域的服务器的负载不均衡,则重新移动局部里面的数据使之达到数据平衡。以queue1所在的服务器的负荷ld1作为基准,queue2、queue3、queue4、queue5和queue6与其的负荷差值绝对值依次为Δ2、Δ3、Δ4、Δ5、Δ6,与设定的非平衡阈值Δ相比较,决策在最小转移耗费的前提下移动数据,使得所有差值在阈值Δ范围以内,达到局部平衡。接下来检测其他的队列负荷,并按照局部数据平衡的原则转移数据更新各个服务器的队列负荷,最终完成所有队列负荷的更新。
网格内队列数据的流通可以在某一服务器的点播请求队列庞大的情况下,减少服务器负担,实现网格内的数据流动,避免阻塞,提高点播效率。同时,转移后的点播数据有可能在别处的服务器获得视频源,完成点播请求,并离开队列,减少点播请求队列。
通过队列数据转移,提高数据流通性,平衡各个服务器之间的负担,同时通过流动,提高视频源获得点播的概率。
图3是本发明多服务器视频点播队列元素点播成功、超时与超载处理示意图。
3、多服务器视频点播队列元素点播成功、超时与超载处理
如图3所示,首先检测队列元素状态,若队列数据元素点播成功,则当然作出相应反馈后,将该元素移出队列;若元素在网格内的时间过长,即等待时间过长,为避免无限循环耗费服务器时间,将此元素移出队列。
然后是实现队列间元素的转移,按实施例2所述步骤对queue1、queue2、queue3、queue4、queue5和queue6实施数据转移。更新后,若queue1的负荷ld1超出预定值LD,则将queue1所在的服务器视为超载,为避免将来发生的阻塞,将部分queue1中等待时长最长的元素移出队列。
对点播成功、超时与超载的处理,在实施了数据转移后,服务器间的负载相对平衡的情况下,避免对服务器的过多请求,造成服务器的伤害。
图4是本发明多服务器视频点播队列的管理流程图。
4、多服务器视频点播队列的管理流程
图4表征了多服务器视频点播队列的管理整体流程,具体如下:
步骤①:是否有新的点播请求,否则跳至步骤③;
步骤②:将请求加入到队列中;
步骤③:某服务器队列是否超载,如果否,则跳至步骤⑤;
步骤④:转移该服务器队列数据,跳至步骤①;
步骤⑤:某服务器队列元素是否超时,如果否,则跳至步骤⑦;
步骤⑥:移出超时元素并做反馈,跳至步骤①;
步骤⑦:某队列元素是否点播成功,如果否,则跳至步骤⑨;
步骤⑧:将元素移出队列并做反馈,跳至步骤①;
步骤⑨:是否所有服务器队列超载,如果否,则跳至步骤①;
步骤⑩:移出等待时长最大的元素并反馈,跳至步骤①。
综上所述:在本发明方法中,通过队列的数据转移实现网格内数据流通,实现了服务器队列负荷平衡,避免拥塞,同时提高点播成功概率,加上对等待超时、点播完成和所有服务器超负荷的情况处理,因此可以提高管理性能。
以上对本发明实施例所提供的一种多服务器视频点播处理方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (2)
1.一种多服务器视频点播处理方法,其特征在于,包括:
预先设置视频点播队列数据结构;
计算第一服务器的负载与其网格邻域服务器的差值;
将差值与非平衡阈值Δ比较,决策出最小转移耗费的队列数据转移方式,实现第一服务器负载的局部平衡;
针对其他服务器执行同样操作,完成所有服务器队列的数据转移与更新;
所述方法管理多服务器视频点播队列过程如下:
步骤①:是否有新的点播请求,如果是,则进入步骤②,如果否,则跳至步骤③;
步骤②:将请求加入到队列中;
步骤③:某服务器队列是否超载,如果是,则进入步骤④,如果否,则跳至步骤⑤;
步骤④:转移该服务器队列数据,跳至步骤①;
步骤⑤:某服务器队列元素是否超时,如果是,则进入步骤⑥,如果否,则跳至步骤⑦;
步骤⑥:移出超时元素并做反馈,跳至步骤①;
步骤⑦:某队列元素是否点播成功,如果是,则进入步骤⑧,如果否,则跳至步骤⑨;
步骤⑧:将元素移出队列并做反馈,跳至步骤①;
步骤⑨:是否所有服务器队列超载,如果是,则进入步骤⑩,如果否,则跳至步骤①;
步骤⑩:移出等待时长最大的元素并反馈,跳至步骤①。
2.根据权利要求1所述的多服务器视频点播处理方法,其特征在于:
所述视频点播队列中的元素包括:要点播视频的信息、目标服务器信息、当前状态信息、排队时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110072534.1A CN102215163B (zh) | 2011-03-24 | 2011-03-24 | 一种多服务器视频点播处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110072534.1A CN102215163B (zh) | 2011-03-24 | 2011-03-24 | 一种多服务器视频点播处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102215163A CN102215163A (zh) | 2011-10-12 |
CN102215163B true CN102215163B (zh) | 2014-04-09 |
Family
ID=44746299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110072534.1A Expired - Fee Related CN102215163B (zh) | 2011-03-24 | 2011-03-24 | 一种多服务器视频点播处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102215163B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10057337B2 (en) * | 2016-08-19 | 2018-08-21 | AvaSure, LLC | Video load balancing system for a peer-to-peer server network |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101027668A (zh) * | 2004-07-21 | 2007-08-29 | 海滩无极限有限公司 | 基于块映射表缓冲存储和虚拟文件系统的可堆叠文件系统模块的分布式存储结构 |
CN101499156A (zh) * | 2008-01-31 | 2009-08-05 | 上海亿动信息技术有限公司 | 一种基于多广告信息发布装置发布广告的控制方法及装置 |
CN101764993A (zh) * | 2010-01-14 | 2010-06-30 | 中山大学 | 一种视频点播系统中的协作缓存方法及视频点播系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100220622A1 (en) * | 2009-02-27 | 2010-09-02 | Yottaa Inc | Adaptive network with automatic scaling |
-
2011
- 2011-03-24 CN CN201110072534.1A patent/CN102215163B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101027668A (zh) * | 2004-07-21 | 2007-08-29 | 海滩无极限有限公司 | 基于块映射表缓冲存储和虚拟文件系统的可堆叠文件系统模块的分布式存储结构 |
CN101499156A (zh) * | 2008-01-31 | 2009-08-05 | 上海亿动信息技术有限公司 | 一种基于多广告信息发布装置发布广告的控制方法及装置 |
CN101764993A (zh) * | 2010-01-14 | 2010-06-30 | 中山大学 | 一种视频点播系统中的协作缓存方法及视频点播系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102215163A (zh) | 2011-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2841377C (en) | Video transcoding services provided by searching for currently transcoded versions of a requested file before performing transcoding | |
CN109819285B (zh) | 一种直播方法、装置、电子设备及存储介质 | |
CN101778257B (zh) | 用于数字视频点播中的视频摘要片断的生成方法 | |
CN110769278A (zh) | 一种分布式视频转码方法及系统 | |
US10601891B2 (en) | Cloud streaming service system and cloud streaming service method for utilizing an optimal GPU for video decoding based on resource conditions, and apparatus for the same | |
US20100049864A1 (en) | Multimedia broadcast system and method | |
CN103686237A (zh) | 推荐视频资源的方法及系统 | |
CN110446072A (zh) | 视频流切换方法、电子设备和存储介质 | |
CN105337901A (zh) | 一种路由器的智能带宽分配方法及装置 | |
CN111031376B (zh) | 基于微信小程序的弹幕处理方法和系统 | |
CN109672857B (zh) | 监控资源的信息处理方法和装置 | |
WO2015042962A1 (en) | System and method of a link surfed http live streaming broadcasting system | |
CN110475102A (zh) | 一种基于视联网的监控数据处理方法及系统 | |
WO2021103364A1 (zh) | 弹幕处理方法和系统 | |
CN104980775A (zh) | 视频流式传输的方法、相应的设备及系统 | |
CN107547909B (zh) | 媒体文件在线播放控制方法、装置和系统 | |
CN110086850A (zh) | 一种文件的处理方法和视联网网盘系统 | |
CN103414921A (zh) | 一种分布式的iptv多终端视频切换业务的建立方法 | |
CN104010228A (zh) | 一种用于基于级的自动调整的对等媒体流的装置和方法 | |
CN102333280B (zh) | 一种业务密钥更新的方法、系统及业务处理服务器 | |
CN105468437A (zh) | 任务窗口的处理方法及装置 | |
WO2014161267A1 (zh) | 海报的显示方法及装置 | |
CN102215163B (zh) | 一种多服务器视频点播处理方法 | |
CN111107387B (zh) | 视频转码方法、装置及计算机存储介质 | |
CN110351577B (zh) | 直播信息处理方法及装置、存储介质、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
DD01 | Delivery of document by public notice | ||
DD01 | Delivery of document by public notice |
Addressee: Chen Lina Document name: Notification of Passing Examination on Formalities |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140409 |