一种任务分配方法和系统的制作方法

文档序号:6353905阅读:218来源:国知局
专利名称:一种任务分配方法和系统的制作方法
技术领域
本发明涉及视频加工技术领域,尤其涉及一种任务分配方法和系统。
背景技术
视频加工处理流程一般包括采集、存储(包含文件系统存储、数据库数据结构化等)、加工处理(包含分 析、拆分、标引、格式转化等),以及和其他系统对接(包含CMS、MAMS等)。目前涉及视频业务的企业所需要的视频都是自己加工处理而成,需要涉及到上述大部分甚至所有流程,而在内容上多家企业又有诸多重合,尤其在电视节目源上,这样不但对各视频业务运营商来说成本巨大,而且这些企业之间并未对这些资源进行共享,造成相当大的资源浪费。这时需要一个独立的第三方企业来搭建一个视频资源共享平台,做这些相互重合的工作,减少各视频业务运营商各自的重合流程,减化自身的业务环节,缩短业务周期,减低成本,提高可共享资源的使用率,达到减少资源浪费的目的。而要满足不同运营商的特性化要求,就必须能提供各种各样的任务处理的能力,任务分配系统就是满足这些特性化任务处理需求的系统。传统的任务分配系统工作原理是,多个客户端将任务处理请求发送给任务分发机,任务分发机收到不同客户端的多个任务处理请求后,依次将任务分配给不同的处理机处理。上述系统存在以下几个问题
一、未判断各处理机的当前状态是否可运行任务处理,可能造成任务丢失。二、未量化任务所消耗的处理器资源量,因为每种处理任务所消耗的处理器资源可能都是不一样的,未根据各处理机的当前负载去分配任务,极有可能会造成处理机处理能力浪费和任务等待。三、未能有效利用处理机的处理能力,增大处理成本。

发明内容
本发明的目的在于提出一种任务分配方法和系统,能够提高系统的可靠性和容错能力,并且可以有效提高处理机的处理效率,减少损耗,降低成本。为达此目的,本发明采用以下技术方案
一种任务分配方法,包括以下步骤
A、数据库中存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值;
B、客户端向任务分发机提交任务处理请求;
C、任务分发机从数据库获取处理机的标识信息,根据处理机的标识信息获取处理机的位置,并向处理机发出询问指令;
D、处理机收到询问指令后,将自己的当前状态信息和负载信息反馈给任务分发机;E、任务分发机从数据库获取任务处理请求中的任务对应的需要消耗的处理能力值和处理机的处理能力信息;
F、任务分发机根据任务需要消耗的处理能力值,并结合处理机的处理能力以及当前状态和负载,将任务分发给对应的处理机。
步骤C中,任务分发机向处理机发送询问指令无响应的次数达到预设值时,任务分发机判断所述处理机处于下线状态,并向监控模块报告所述处理机状态异常。还包括以下步骤
数据库存储有新的处理机的标识信息和处理能力信息时,数据库向任务分发机发送更新处理机列表指令,任务分发机从数据库读取处理机信息以更新处理机列表。还包括以下步骤
任务分发机监控每个任务的执行进度,当一台处理机执行任务失败或者异常时,将所述任务发送给其他处理机执行。处理机的标识信息是处理机的IP地址。处理机的处理能力和每种类型任务消耗的处理能力按照同一个标准进行量化。一种任务分配系统,包括数据库、客户端、任务分发机和处理机,任务分发机分别与数据库、客户端和处理机连接,其中,
数据库用于存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值;
客户端用于向任务分发机提交任务处理请求;
任务分发机用于接收客户端发来的任务处理请求,从数据库获取处理机的标识信息和处理能力信息及任务处理请求中的任务对应的需要消耗的处理能力值,向处理机发送询问指令,接收处理机的当前状态信息和负载信息,并向处理机发送任务;
处理机用于从任务分发机接收询问指令,将自己的当前状态信息和负载信息反馈给任务分发机,并接收任务分发机发来的任务。还包括监控模块,监控模块与任务分发机连接,任务分发机还用于判断处理机的状态,并发送给监控模块。采用了本发明的技术方案,能够提高系统的可靠性和容错能力,并且可以合理分配处理机资源,有效提高处理机的处理效率,减少损耗,降低成本,易于扩展和维护处理集群。


图I是本发明具体实施方式
中任务分配系统的结构示意图。图2是本发明具体实施方式
中任务分配的流程图。
具体实施例方式下面结合附图并通过具体实施方式
来进一步说明本发明的技术方案。图I是本发明具体实施方式
中任务分配系统的结构示意图。如图I所示,该任务分配系统包括数据库101、客户端102、监控模块103、任务分发机104和处理机105,任务分发机分别与数据库、客户端、监控模块和处理机连接。
数据库存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值。客户端向任务分发机提交任务处理请求。任务分发机接收客户端发来的任务处理请求,从数据库获取处理机的标识信息和处理能力信息及任务处理请求中的任务对应的需要消耗的处理能力值,向处理机发送询问指令,接收处理机 的当前状态信息和负载信息,并向处理机发送任务,任务分发机还判断处理机的状态,并发送给监控模块。处理机从任务分发机接收询问指令,将自己的当前状态信息和负载信息反馈给任务分发机,并接收任务分发机发来的任务。图2是本发明具体实施方式
中任务分配的流程图。如图2所示,该任务分配流程包括以下步骤
步骤201、数据库中存储处理机的标识信息(IP地址)和处理能力信息以及每种类型任务消耗的处理能力值。其中处理机的处理能力和每种类型任务消耗的处理能力按照同一个标准进行量化,基准能力设定为100,不同的处理机参照基准能力得出各自的处理能力,每种类型的任务消耗的处理能力也是参照基准能力配置。步骤202、客户端向任务分发机提交任务处理请求。步骤203、任务分发机从数据库获取处理机的标识信息(IP地址),根据处理机的标识信息获取处理机的位置,并向处理机发出询问指令。任务分发机向处理机发送询问指令无响应的次数达到预设值时,任务分发机判断该处理机处于下线状态,并向监控模块报告该处理机状态异常。步骤204、处理机收到询问指令后,将自己的当前状态信息和负载信息反馈给任务分发机。状态信息包括可运行状态和不可运行状态,负载信息则是处理机正在负载的任务占其处理能力的百分比例。步骤205、任务分发机从数据库获取任务处理请求中的任务对应的需要消耗的处理能力值和处理机的处理能力信息。步骤206、任务分发机根据任务需要消耗的处理能力值,并结合处理机的处理能力以及当前状态和负载,将任务分发给对应的处理机。例如客户端提交任务处理请求中的任务需要消耗的处理能力值是80,如果一个处理机的当前状态是不可运行的,则不会发送任务给这个处理机。如果一个处理机的当前状态是可运行的,则获取该处理机反馈的处理能力信息和负载信息,如果该处理机的处理能力是100,而当前负载是50%,则剩余的处理能力100* (1-50%) =50不能执行需要消耗的处理能力值是80的任务,任务分发机就不将该任务分发给该处理机;如果当前负载是10%,则剩余的处理能力100* (1-10%)=90能够执行需要消耗的处理能力值是80的任务,任务分发机则将该任务分发给该处理机。步骤207、任务分发机监控每个任务的执行进度,当一台处理机执行任务失败或者异常时,将上述任务发送给其他处理机执行。另外,如果数据库存储有新的处理机的标识信息和处理能力信息时,数据库向任务分发机发送更新处理机列表指令,任务分发机从数据库读取处理机信息以更新处理机列表,即可完成该处理机上线。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖 在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种任务分配方法,其特征在于,包括以下步骤 A、数据库中存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值; B、客户端向任务分发机提交任务处理请求; C、任务分发机从数据库获取处理机的标识信息,根据处理机的标识信息获取处理机的位置,并向处理机发出询问指令; D、处理机收到询问指令后,将自己的当前状态信息和负载信息反馈给任务分发机; E、任务分发机从数据库获取任务处理请求中的任务对应的需要消耗的处理能力值和处理机的处理能力信息; F、任务分发机根据任务需要消耗的处理能力值,并结合处理机的处理能力以及当前状态和负载,将任务分发给对应的处理机。
2.根据权利要求I所述的一种任务分配方法,其特征在于,步骤C中,任务分发机向处理机发送询问指令无响应的次数达到预设值时,任务分发机判断所述处理机处于下线状态,并向监控模块报告所述处理机状态异常。
3.根据权利要求I所述的一种任务分配方法,其特征在于,还包括以下步骤 数据库存储有新的处理机的标识信息和处理能力信息时,数据库向任务分发机发送更新处理机列表指令,任务分发机从数据库读取处理机信息以更新处理机列表。
4.根据权利要求I所述的一种任务分配方法,其特征在于,还包括以下步骤 任务分发机监控每个任务的执行进度,当一台处理机执行任务失败或者异常时,将所述任务发送给其他处理机执行。
5.根据权利要求I所述的一种任务分配方法,其特征在于,处理机的标识信息是处理机的IP地址。
6.根据权利要求I所述的一种任务分配方法,其特征在于,处理机的处理能力和每种类型任务消耗的处理能力按照同一个标准进行量化。
7.一种任务分配系统,其特征在于,包括数据库、客户端、任务分发机和处理机,任务分发机分别与数据库、客户端和处理机连接,其中, 数据库用于存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值; 客户端用于向任务分发机提交任务处理请求; 任务分发机用于接收客户端发来的任务处理请求,从数据库获取处理机的标识信息和处理能力信息及任务处理请求中的任务对应的需要消耗的处理能力值,向处理机发送询问指令,接收处理机的当前状态信息和负载信息,并向处理机发送任务; 处理机用于从任务分发机接收询问指令,将自己的当前状态信息和负载信息反馈给任务分发机,并接收任务分发机发来的任务。
8.根据权利要求7所述的一种任务分配系统,其特征在于,还包括监控模块,监控模块与任务分发机连接,任务分发机还用于判断处理机的状态,并发送给监控模块。
全文摘要
本发明公开了一种任务分配方法和系统,数据库中存储处理机的标识信息和处理能力信息以及每种类型任务消耗的处理能力值;客户端向任务分发机提交任务处理请求;任务分发机根据处理机的标识信息向处理机发出询问指令;处理机将自己的当前状态信息和负载信息反馈给任务分发机;任务分发机从数据库获取任务处理请求中的任务对应的需要消耗的处理能力值和处理机的处理能力信息;再根据任务需要消耗的处理能力值,并结合处理机的处理能力以及当前状态和负载,将任务分发给对应的处理机。采用了本发明的技术方案,能够提高系统的可靠性和容错能力,并且可以有效提高处理机的处理效率,减少损耗,降低成本。
文档编号G06F9/46GK102622265SQ201110030729
公开日2012年8月1日 申请日期2011年1月28日 优先权日2011年1月28日
发明者蒋敏 申请人:天脉聚源(北京)传媒科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1