任务调度方法、装置及系统的制作方法

文档序号:9616164阅读:290来源:国知局
任务调度方法、装置及系统的制作方法
【技术领域】
[0001]本发明涉及计算技术领域,特别涉及一种任务调度方法、装置及系统。
【背景技术】
[0002]现在科技的发展,需要计算机的计算量越来越大,一些计算密集型,需要计算机要有很强的运算处理能力,即使普通的大型机其计算也很难胜任。这时,一般都使用计算机集群技术,集中几十台甚至上百台计算机的运算能力来满足要求。提高处理性能一直是集群技术研究的一个重要目标之一。但是现有技术的计算寄集群处理面临着任务量大,分布任务不能均衡,导致有些计算机超负荷,有些计算机空闲,导致处理任务的效率低。

【发明内容】

[0003]有鉴于此,本发明提供一种任务调度方法、装置及系统,可以提高任务处理效率,减少超负荷的现象,提升资源利用率。
[0004]一种任务调度方法,用于服务器集群中,所述服务器集群用于根据处理客户端提交的任务处理请求,所述服务器集群包括调度单元、以及多个任务处理单元,所述方法包括以下步骤:
[0005]所述任务处理单元将其负载信息发送给所述调度单元;
[0006]所述调度单元在接收客户端发送的第一任务处理单元分配请求后选择负载低的任务处理单元;
[0007]将所述选择的任务处理单元的标识返回至所述客户端;以及
[0008]所述客户端将任务提交至所述标识对应的任务处理单元进行处理。
[0009]一种任务调度方法,用于服务器集群中,所述服务器集群用于根据处理客户端提交的任务处理请求,所述服务器集群包括调度单元、以及多个任务处理单元,所述方法包括以下步骤:
[0010]所述任务处理单元将其负载信息发送给所述调度单元;
[0011]所述客户端向所述调度单元发送负载请求;
[0012]所述调度单元在接收客户端发送的负载请求后,将所述任务处理单元的负载信息返回至所述客户端;
[0013]所述客户端根据所述负载信息选择负载低的任务处理单元,并从所述调度单元获取所述选择的任务处理单元的标识;以及
[0014]将任务提交至所述标识对应的任务处理单元进行处理。
[0015]一种任务调度方法,用于在一个服务器中将任务处理请求提交给一个服务器集群,所述服务器集群包括调度单元、以及多个任务处理单元,所述方法包括以下步骤:
[0016]获取所述任务处理单元的列表;
[0017]按照预定的策略向所述列表中的任务处理单元提交任务处理请求;
[0018]记载提交的任务处理请求的数量;
[0019]若任务处理请求的数量超过预设阈值,则
[0020]将任务处理请求提交至所述列表中负载低的任务处理单元进行处理。
[0021]一种任务调度系统,所述系统包括服务器集群及客户端,所述服务器集群用于根据处理所述客户端提交的任务处理请求,所述服务器集群包括调度单元、以及多个任务处理单元,
[0022]所述任务处理单元,用于将其负载信息发送给所述调度单元;
[0023]所述调度单元,用于在接收客户端发送的第一任务处理单元分配请求后选择负载低的任务处理单元;
[0024]所述调度单元,还用于将所述选择的任务处理单元的标识返回至所述客户端;
[0025]所述客户端,用于将任务提交至所述标识对应的任务处理单元进行处理。
[0026]一种任务调度系统,所述系统包括服务器集群及客户端,所述服务器集群用于根据处理所述客户端提交的任务处理请求,所述服务器集群包括调度单元、以及多个任务处理单元,
[0027]所述任务处理单元,用于将其负载信息发送给所述调度单元;
[0028]所述客户端,用于向所述调度单元发送负载请求;
[0029]所述调度单元,用于在接收客户端发送的负载请求后,将所述任务处理单元的负载信息返回至所述客户端;
[0030]所述客户端,用于根据所述负载信息选择负载低的任务处理单元,并从所述调度单元获取所述选择的任务处理单元的标识;以及
[0031]将任务提交至所述标识对应的任务处理单元进行处理。
[0032]一种任务调度装置,用于在一个服务器中将任务处理请求提交给一个服务器集群,所述服务器集群包括调度单元、以及多个任务处理单元,所述装置包括:
[0033]列表获取模块,用于获取所述任务处理单元的列表;
[0034]请求模块,用于按照预定的策略向所述列表中的任务处理单元提交任务处理请求;
[0035]记载模块,用于记载提交的任务处理请求的数量;
[0036]判断模块,用于判断任务处理请求的数量是否超过预设阈值,
[0037]处理请求模块,用于将任务处理请求提交至所述列表中负载低的任务处理单元进行处理。
[0038]根据本发明实施例,通过所述调度单元的分配负载低的任务处理单元处理任务,有效防止处理单元的一些机器超负荷,提升资源利用率。
[0039]为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
【附图说明】
[0040]图1为第一实施例提供的一种任务调度系统的结构示意图。
[0041]图2为图1所示的调度单元服务器的结构框图。
[0042]图3为图1所示的任务处理单元服务器的结构框图。
[0043]图4为图1所示的客户端的结构框图。
[0044]图5为第二实施例提供的一种任务调度方法流程图。
[0045]图6为第三实施例提供的一种任务调度方法流程图。
[0046]图7为第四实施例提供的一种任务调度方法流程图。
[0047]图8为第五实施例提供的一种任务调度方法流程图。
[0048]图9为第五实施例提供的多级任务调度流程示意图。
[0049]图10为第六实施例提供的一种任务调度方法流程图。
[0050]图11为第七实施例提供的一种任务调度方法流程图。
[0051]图12为第八实施例提供的一种任务调度方法流程图。
[0052]图13为第九实施例提供的一种任务调度方法流程图。
[0053]图14为第十实施例提供的一种任务调度方法流程图。
[0054]图15为第十一实施例提供的一种任务调度方法流程图。
[0055]图16为第十二实施例提供的一种任务调度方法流程图。
[0056]图17为第十三实施例提供的一种任务调度方法流程图。
[0057]图18为第十四实施例提供的一种任务调度方法流程图。
[0058]图19为第十五实施例提供的一种任务调度装置结构框图。
[0059]图20为第十六实施例提供的一种任务调度装置结构框图。
[0060]图21为第十七实施例提供的一种任务调度装置结构框图。
[0061]图22为第十八实施例提供的一种任务调度装置结构框图。
[0062]图23为第十九实施例提供的一种任务调度装置结构框图。
【具体实施方式】
[0063]为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的【具体实施方式】、结构、特征及其功效,详细说明如后。
[0064]第一实施例
[0065]图1为第一实施例提供的一种任务调度系统的结构示意图。任务调度系统包括调度单元,任务处理单元以及客户端。所述调度单元及处理单元可以由计算机或者由虚拟机模拟出来的虚拟机组成。本实施例中以服务器为例,如图1所示,调度单元包括一个或多个调度服务器100(图1中仅示出一个)、任务处理单元包括一个或多个调度服务器100及一个或多个处理服务器200 (图1中示出了四个)以及一个或多个客户端300 (图1中仅示出一个)。上述的各服务器是指部署在网络环境中的计算机,用于侦听网络上的其他计算机或者其他客户端(如图1所示的客户端300)提交的服务请求,并提供相应的服务。
[0066]在本实施例中,上述的调度服务器100用于提供处理资源分配服务,处理服务器200用于提供数据处理服务。例如,资源分配服务可以是监听处理资源的处理状况以及负载量,并根据负载量将处理资源分配至请求资源的客户端。数据处理服务可以是用于接收客户端传送的任务并对任务进行处理,所述任务可以是图片压缩、云计算及分布式存储等。
[0067]图2示出了上述调度服务器的结构框图。如图所示,调度服务器100包括:存储器102、处理器104以及网络模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对服务器100的结构造成限定。例如,服务器100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。
[0068]存储器102可用于存储软件程序以及模块,如本发明实施例中的任务调度方法、装置及系统对应的程序指令/模块,处理器104通过运行存储在存储器102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现任务调度方法。存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器102可进一步包括相对于处理器104远程设置的存储器,这些远程存储器可以通过网络连接至调度服务器100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0069]网络模块106用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。在一个实例中,上述网络信号为有线网络信号。此时,网络模块106可包括处理器、随机存储器、转换器、晶体振荡器等元件。
[0070]上述的软件程序以及模块包括:操作系统108、调度模块110。其中操作系统108例如可为LINUX,UNIX,WINDOWS,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。调度模块110运行在操作系统108的基础上,用于分配处理资源,并收集处理资源的负载情况。
[0071]进一步地,调度模块110内可包括资源分配模块112,用于当调度模块110接收到客户端发送的任务处理单元请求时,根据当前任务处理单元的负载量分配负载低的任务处理单元。调度模块110内还可包括信息获取模块114,用于接收当前所述任务处理单元当前使用状态。
[0072]参阅图3,其为上述的处理服务器200的一个实施例的结构框图。对比参阅图2及图3,处理服务器200与调度服务器100结构相似,其不同之处在于,处理服务器200内不包括调度模块110,而包括处理模块116。处理模块116运行在操作系统108的基础上,并通过操作系统108的网络服务监听来自网络的请求,根据请求完成相应的数据处理,并返回处理结果给客户端。也就是说,处理模块116用于向客户端提供上述的数据处理服务。
[0073]进一步地,如图3所示,处理模块116可包括信息上报模块118,用于将当前的负载量信息发送至所属的调度单元。处理模块116还可包括数据接收模块120,用于接收客户端发送的任务。
[0074]参阅图4,其为上述的客户端300的一个实施例的结构框图。对比参阅图2及图4,客户端300与调度服务器100结构相似,其不同之处在于,处理服务器200内不包括调度模块110,而包括处理申请模块122。处理申请模块122运行在操作系统108的基础上,并通过操作系统108的网络服务监听来自网络的请求以及传输任务至目标处理端。也就是说,处理申请模块122用于向上述调度服务器以及处理服务器发送资源申请请求以及将任务发送至目标处理单元。
[0075]进一步地,如图4所
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1