公开/公告号CN107105037A
专利类型发明专利
公开/公告日2017-08-29
原文格式PDF
申请/专利权人 上海幻电信息科技有限公司;
申请/专利号CN201710277136.0
申请日2017-04-25
分类号H04L29/08(20060101);
代理机构31249 上海信好专利代理事务所(普通合伙);
代理人朱成之
地址 201210 上海市浦东新区张江高科技园区祖冲之路2377弄1号905、906室
入库时间 2023-06-19 03:07:54
法律状态公告日
法律状态信息
法律状态
2020-06-05
授权
授权
2017-09-22
实质审查的生效 IPC(主分类):H04L29/08 申请日:20170425
实质审查的生效
2017-08-29
公开
公开
技术领域
本发明涉及一种分布式视频CDN资源管理系统及方法,具体是指一种基于文件校验的分布式视频CDN资源管理系统及方法,涉及高可用、分布式系统、视频CDN、文件校验及文件调度等技术领域。
背景技术
现阶段,各个视频网站都采用了CDN(Content Delivery Network,内容分发网络)系统来向终端用户提供视频播放的服务。该CDN系统需要一套拥有全部位置和资源信息的中央调度服务,接收用户的视频请求,根据用户所在的位置,选取服务效果最佳的CDN视频资源返回给用户,用户根据这一结果再向CDN请求视频,完成服务。
在这种工作模式下,中央调度服务所掌握的这份全局数据务必要准确及时。然而在实际情况中,要保证做到这一点并非很容易。
首先,这份全局数据往往来自于分发系统,而分发系统本身可能并不完全可靠。再者,由于CDN节点直接面对用户,往往负载重、压力大,故而发生故障的概率更高。此外,由于CDN节点普遍远离主数据中心,无法快速获悉和应对发生的故障,导致修复故障的时间延长。
因此,在上述这种情况下,如果没有一套相匹配的资源管理系统与调度服务配合,那么调度服务的质量将无法得到保证。
发明内容
本发明的目的在于提供一种基于文件校验的分布式视频CDN资源管理系统及方法,对所有CDN节点上的视频资源进行统一维护和管理,在不需要人工干预的情况下,自动完成问题资源的发现并下线,以及问题资源的恢复并上线。
为了达到上述目的,本发明提供一种基于文件校验的分布式视频CDN资源管理系统,包含:管理服务器,分别与调度系统以及分发系统连接;多个代理服务器,均与管理服务器通信连接,分别对应设置在CDN资源管理系统的各个CDN节点上;每个代理服务器扫描各自所在的CDN节点上的视频资源,将扫描结果合并形成资源清单后返回给管理服务器;所述的管理服务器接收各个代理服务器的扫描结果并进行校验,针对所发现的问题资源,结合调度系统以及分发系统启动相应的处理措施,维护调度服务中所使用的视频信息。
本发明还提供一种基于文件校验的分布式视频CDN资源管理方法,采用上述的CDN资源管理系统实现,包含以下步骤:
S1、每个代理服务器扫描各自所在的CDN节点上的视频资源,将扫描结果合并形成资源清单后返回给管理服务器;
S2、管理服务器接收各个代理服务器的扫描结果并进行校验,针对所发现的问题资源,结合调度系统以及分发系统启动相应的处理措施,维护调度服务中所使用的视频信息。
在所述的S1之前,还包含:S0、根据CDN节点的服务能力以及管理服务器的校验能力,适配对应策略以控制各个代理服务器启动扫描。
所述的S1中,每个代理服务器扫描各自CDN节点视频资源的过程,具体包含以下步骤:
S11、对于每个视频资源,判断其在前次扫描之后是否发生改变;如是,则获取该视频资源的记录信息,并添加至资源清单中;如否,则从前次扫描结果中获取该视频资源的记录信息,并添加至资源清单中;
S12、完成CDN节点上所有视频资源的扫描,形成完整的资源清单并进行本地保存;
S13、将资源清单发送至管理服务器。
所述的S11中,具体包含以下步骤:
S111、记录当前视频资源的文件标识;
S112、根据文件标识判断当前视频资源是否存在于前次扫描结果中;如是,继续执行S113;如否,继续执行S114;
S113、判断当前视频资源在前次扫描之后是否发生改变;如是,继续执行S114;如否,继续执行S115;
S114、对当前视频资源扫描,以获取该视频资源的记录信息;
S115、从前次扫描结果中获取当前视频资源的记录信息;
S116、将获取的当前视频资源的记录信息添加至资源清单中;
S117、重复执行S111~S116,对下一个视频资源进行扫描,直至完成CDN节点上所有视频资源的扫描。
所述的S114和S115中,每个视频资源的记录信息包括:文件大小、文件上次修改时间、以及文件检验值。
所述的S2中,具体包含以下步骤:
S21、管理服务器接收各个代理服务器扫描得到的资源清单,将其与调度系统所使用的调度清单进行逐条比对校验;
S22、管理服务器确定资源清单中的每个视频资源的记录信息状态;
S23、管理服务器根据资源清单中的每个视频资源的记录信息的不同状态,采用相应的处理措施进行维护。
所述的S22中,记录信息的状态包含以下4种情况:
A、记录信息只存在于资源清单中,不存在于调度清单中;
B、记录信息只存在于调度清单中,不存在于资源清单中;
C、记录信息同时存在于资源清单和调度清单中,但检验值不同;
D、记录信息同时存在于资源清单和调度清单中,且检验值相同。
所述的S23中,对于记录信息的4种状态,包含以下处理措施:
针对状态A,该视频资源不属于需要调度服务的范畴,管理服务器指示代理服务器删除该视频资源;
针对状态B和状态C,该视频资源不可服务,管理服务器将其从视频清单中删除,并通知分发系统,对该视频资源重新分发,恢复可服务状态;
针对状态D,该视频资源属于正常资源,无需采取任何处理措施。
综上所述,本发明所提供的基于文件校验的分布式视频CDN资源管理系统及方法,具有以下优点和有益效果:
1、本发明通过代理服务器本地扫描结合管理服务器中央校验处理的方式,在没有人工干预的情况下,使得自动维护所有CDN节点上的视频资源成为可能;从而实现自动发现问题资源,并使问题资源快速下线,避免用户访问失败;同时,结合分发系统,可以快速修复问题资源,使其重新上线服务。
2、本发明中使用的视频资源扫描方法,使得全局扫描的速率有效提升,即扫描频度有效提高,并且使得问题资源的故障影响时间极大缩短,对用户的影响降至最低。
3、采用传统视频CDN服务,结合本发明提出的CDN资源管理系统,使得系统可靠性、服务能力以及服务质量均得到有效提升,为用户带来更好的客户体验与服务。
附图说明
图1为本发明中的基于文件校验的分布式视频CDN资源管理系统的结构示意图;
图2为本发明中的基于文件校验的分布式视频CDN资源管理方法的流程图;
图3为本发明中的代理服务器的运行流程图。
具体实施方式
以下结合图1~图3,通过详细说明一个较佳的具体实施例,对本发明做进一步阐述。
如图1所示,为本发明提供的基于文件校验的分布式视频CDN资源管理系统,包含:管理服务器1,设置在CDN资源管理系统的中心,分别与调度系统以及分发系统连接;多个代理服务器2,均与管理服务器1通信连接,分别对应设置在CDN资源管理系统的各个CDN节点上;每个所述的代理服务器2扫描各自所在的CDN节点上的视频资源,将扫描结果合并形成资源清单后返回给管理服务器1;所述的管理服务器1为CDN资源管理系统的控制核心,接收各个代理服务器2的扫描结果并进行校验,针对所发现的问题资源,结合调度系统以及分发系统启动相应的处理措施,维护调度服务中所使用的视频信息。
如图2所示,为本发明提供的基于文件校验的分布式视频CDN资源管理方法,采用上述的CDN资源管理系统实现,包含以下步骤:
S1、每个代理服务器2扫描各自所在的CDN节点上的视频资源,将扫描结果合并形成资源清单后返回给管理服务器1;
S2、管理服务器1接收各个代理服务器2的扫描结果并进行校验,针对所发现的问题资源,结合调度系统以及分发系统启动相应的处理措施,维护调度服务中所使用的视频信息。
各个代理服务器2是否应该启动扫描过程,可以根据需求适配不同的策略进行控制。但是,在CDN节点的服务能力以及管理服务器1的校验能力能够确保的情况下,应该尽可能的频繁运行扫描过程,从而提高错误被及时发现被及时处理的概率。因此,在所述的S1之前,还包含:S0、根据CDN节点的服务能力以及管理服务器1的校验能力,适配对应策略以控制各个代理服务器2启动扫描。
所述的S1中,在各个代理服务器2扫描各自CDN节点视频资源的过程中,考虑到CDN节点上的视频资源文件往往数量巨大,如果每一次的扫描都完整重建所有视频资源的话,耗时太长,故而不可能达到以较高频率运行的目的。
由于实际上在相邻的两次扫描之间,绝大多数的视频资源文件都不会发生改变,故而绝大多数的重建是可以直接借用前一次扫描结果的。通过这一方法就能确保极大的加快每次扫描速度,从而使得频繁进行CDN节点上全部视频资源的扫描成为可能。
如图3所示,所述的S1中,每个代理服务器2扫描各自CDN节点视频资源的过程,具体包含以下步骤:
S11、对于每个视频资源,判断其在前次扫描之后是否发生改变;如是,则获取该视频资源的记录信息,并添加至资源清单中;如否,则从前次扫描结果中获取该视频资源的记录信息,并添加至资源清单中;
S12、完成CDN节点上所有视频资源的扫描,形成完整的资源清单并进行本地保存;
S13、将资源清单发送至管理服务器1。
所述的S11中,具体包含以下步骤:
S111、记录当前视频资源的文件标识;
S112、根据文件标识判断当前视频资源是否存在于前次扫描结果中;如是,继续执行S113;如否,继续执行S114;
S113、判断当前视频资源在前次扫描之后是否发生改变;如是,继续执行S114;如否,继续执行S115;
S114、对当前视频资源扫描,以获取该视频资源的记录信息;
S115、从前次扫描结果中获取当前视频资源的记录信息;
S116、将获取的当前视频资源的记录信息添加至资源清单中;
S117、重复执行S111~S116,对下一个视频资源进行扫描,直至完成CDN节点上所有视频资源的扫描。
所述的S114和S115中,每个视频资源的记录信息包括:文件大小、文件上次修改时间、以及文件检验值。
所述的S2中,具体包含以下步骤:
S21、管理服务器1接收各个代理服务器2扫描得到的资源清单,将其与调度系统所使用的调度清单进行逐条比对校验;
S22、管理服务器1确定资源清单中的每个视频资源的记录信息状态;
S23、管理服务器1根据资源清单中的每个视频资源的记录信息的不同状态,采用相应的处理措施进行维护。
所述的S22中,记录信息的状态包含以下4种情况:
A、记录信息只存在于资源清单中,不存在于调度清单中;
B、记录信息只存在于调度清单中,不存在于资源清单中;
C、记录信息同时存在于资源清单和调度清单中,但检验值不同;
D、记录信息同时存在于资源清单和调度清单中,且检验值相同。
所述的S23中,对于记录信息的4种状态,包含以下处理措施:
针对状态A,该视频资源不属于需要调度服务的范畴,管理服务器1指示代理服务器2删除该视频资源,以释放更多空间用于分发新的资源内容;
针对状态B和状态C,该视频资源不可服务,管理服务器1将其从视频清单中删除,并通知分发系统,对该视频资源重新分发,使其恢复可服务状态;
针对状态D,该视频资源属于正常资源,无需采取任何处理措施。
综上所述,本发明所提供的基于文件校验的分布式视频CDN资源管理系统及方法,具有以下优点和有益效果:
1、本发明通过代理服务器本地扫描结合管理服务器中央校验处理的方式,在没有人工干预的情况下,使得自动维护所有CDN节点上的视频资源成为可能;从而实现自动发现问题资源,并使问题资源快速下线,避免用户访问失败;同时,结合分发系统,可以快速修复问题资源,使其重新上线服务。
2、本发明中使用的视频资源扫描方法,使得全局扫描的速率有效提升,即扫描频度有效提高,并且使得问题资源的故障影响时间极大缩短,对用户的影响降至最低。
3、采用传统视频CDN服务,结合本发明提出的CDN资源管理系统,使得系统可靠性、服务能力以及服务质量均得到有效提升,为用户带来更好的客户体验与服务。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
机译: 一种用于发送基于面积的360度视频的方法,一种用于接收基于面积的360度视频的方法,一种用于发送基于区域的360度视频的设备,一种用于基于区域接收360度视频的设备
机译: HDFS中的分布式视频文件存储系统(HADOOP分布式文件系统),视频地图缩减系统及其提供方法
机译: 基于分布式文件系统的大规模多视频点播业务的视频点播系统及其方法