CN109684064A - 一种任务调度方法及任务调度设备 - Google Patents

一种任务调度方法及任务调度设备 Download PDF

Info

Publication number
CN109684064A
CN109684064A CN201811603523.XA CN201811603523A CN109684064A CN 109684064 A CN109684064 A CN 109684064A CN 201811603523 A CN201811603523 A CN 201811603523A CN 109684064 A CN109684064 A CN 109684064A
Authority
CN
China
Prior art keywords
task
newly
built
current
current unscheduled
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.)
Pending
Application number
CN201811603523.XA
Other languages
English (en)
Inventor
周阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Asiainfo Technologies China Inc
Original Assignee
Asiainfo Technologies China Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Asiainfo Technologies China Inc filed Critical Asiainfo Technologies China Inc
Priority to CN201811603523.XA priority Critical patent/CN109684064A/zh
Publication of CN109684064A publication Critical patent/CN109684064A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种任务调度方法及任务调度设备,可以获得当前未调度的任务的任务信息和任务调度设备中各进程的空闲处理资源信息;在所述任务信息和所述空闲处理资源信息的满足预设的进程新建条件时,新建至少一个进程;将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,实现了在处理当前未调度的任务需要的总资源与各进程空闲处理资源的总和的差值大于一定值而导致任务调度设备停止调度时,所述任务调度设备可以新建至少一个进程以保证所述任务调度设备对任务的持续调度,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。

Description

一种任务调度方法及任务调度设备
技术领域
本发明涉及任务调度技术领域,尤其涉及一种任务调度方法及任务调度设备。
背景技术
随着互联网科技的发展,集群技术不断提高。
任务调度是集群系统中的关键技术,在任务调度管理器将任务分配至各进程进行处理的过程中,当处理当前未调度任务需要的总资源减去各进程空闲处理资源的总和得到的差值大于一定值时,任务调度管理器很可能将停止调度,当该差值小于一定值时,任务调度管理器会持续进行或恢复任务调度。
但是,一旦任务调度管理器停止调度,则当前未调度的任务不能及时得到处理,集群系统任务处理效率低。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的任务调度方法及任务调度设备,技术方案如下:
一种任务调度方法,其特征在于,应用于任务调度设备,所述方法包括:
获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理。
优选的,所述获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息,包括:
获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
优选的,其特征在于,所述预设的进程新建条件为如下条件中的任一个:
条件一、当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0;
条件二、当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值;
条件三、当前未调度的任务的任务数量大于第二预设阈值;
条件四、所述各进程的空闲线程数小于第三预设阈值。
优选的,所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,包括如下分配方式中的任一种:
方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;
方式三、将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
方式四、将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
优选的,所述方法还包括:在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数量小于第三预设阈值时,注销所述第一进程。
一种任务调度设备,包括:信息获得模块、进程新建模块和任务分配模块,其中:
所述信息获得模块,用于获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
所述进程新建模块,用于在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
所述任务分配模块,用于将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理。
优选的,所述信息获得模块,具体用于获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
优选的,所述预设的进程新建条件为如下条件中的任一个:
条件一、当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0;
条件二、当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值;
条件三、当前未调度的任务的任务数量大于第二预设阈值;
条件四、所述各进程的空闲线程数小于第三预设阈值。
优选的,所述任务分配模块,具体包括第一分配模块、第二分配模块、第三分配模块和第四分配模块中的至少一个,其中:
所述第一分配模块,用于将全部当前未调度的任务分配给所述新建的进程进行处理;
所述第二分配模块,用于将部分当前未调度的任务分配给所述新建的进程进行处理;
所述第三分配模块,用于将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
所述第四分配模块,用于将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
优选的,所述任务调度设备还包括进程注销模块,所述进程注销模块用于在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数小于第三预设阈值时,注销所述第一进程。
本发明公开的一种任务调度方法及任务调度设备,可以获得当前未调度的任务的任务信息和任务调度设备中各进程的空闲处理资源信息;在所述任务信息和所述空闲处理资源信息的满足预设的进程新建条件时,新建至少一个进程;将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,实现了在处理当前未调度的任务需要的总资源与各进程空闲处理资源的总和的差值大于一定值而导致任务调度设备停止调度时,所述任务调度设备可以新建至少一个进程以保证所述任务调度设备对任务的持续调度,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种任务调度方法的流程图;
图2a和图2b分别示出了当预设的进程新建条件为当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0时,本发明实施例提供的任务调度方法的流程图;
图3a、图3b、图3c和图3d分别示出了当预设的进程新建条件为当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值时,本发明实施例提供的任务调度方法的流程图;
图4a、图4b、图4c和图4d分别示出了当预设的进程新建条件为当前未调度的任务的任务数量大于第二预设阈值时,本发明实施例提供的任务调度方法的流程图;
图5a、图5b、图5c和图5d分别示出了当所述预设的进程新建条件为所述各进程的空闲线程数小于第三预设阈值时,本发明实施例提供的任务调度方法的流程图;
图6示出了本发明实施例提供的另一种任务调度方法的流程图。
图7示出了本发明实施例提供的一种任务调度设备的结构示意图;
图8a、图8b和图8c分别示出了当预设的进程新建条件为当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0时,本发明实施例提供的任务调度设备的结构示意图;
图9示出了本发明实施例提供的另一种任务调度设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种应用于任务调度设备的任务调度方法,如图1所示,该方法可以包括以下步骤:
S100、获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
具体的,步骤S100中的任务信息可以为任务数量,空闲处理资源信息可以为空闲线程数。即:步骤S100可以具体包括:
获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
可选的,任务调度设备可以是集群调度系统中的任务调度管理器。
需要说明的是,任务调度管理器分配给进程的任务由该进程创建的线程接收进行处理,一个线程可以接收并处理一个任务,其中,每个进程均有一个最大可创建的线程数,即每个进程均有一个可以包含的最大线程数,各进程中可以包含的最大线程数可以是相同的,也可以是不同的。一个进程的空闲处理资源可以是该进程中除了当前已承担任务的线程外还可以创建的线程的数量,空闲线程可以表示该线程当前处于未承担任务的状态,即该进程中的空闲线程数可以表示该进程当前处于未承担任务的线程的数量,也可以表示该进程当前还能创建的线程的数量,还可以表示该进程当前还可以接收的任务数。
S200、在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
S300、将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理;
具体的,在分布式集群任务调度模式下,若当前未调度的任务的任务数量和全部进程中还可以创建的总线程数满足技术人员预先设定的条件时,由任务调度管理器根据未调度的任务数量和各进程中还能创建的线程数进行计算,根据获得的计算结果和集群系统的自身资源决定新建的进程数,之后,任务调度管理器可以注册并新建进程,以保证集群系统对任务的持续调度和处理能力。
之后,任务调度管理器在进行任务调度时,若非新建进程还可以创建线程,任务调度管理器可以先将部分未调度的任务分配给非新建进程,由非新建进程创建线程以进行任务处理,其中,任务调度管理器可以在全部非新建进程中包含的线程数到达最大线程数或者到达预设的阈值时,停止向非新建进程分配任务。需要说明的是,该阈值可以是全部非新建进程能创建的最大线程数的95%,也可以是98%,技术人员可以根据具体情况设定该阈值,本实施例对该阈值不作限定。若全部非新建进程包含的线程数已到达最大线程数,则任务调度管理器可以直接向新建的进程分配任务。另外需要说明的是,任务调度管理器新建进程后,即使非新建进程中还可以创建线程,但是由于非新建进程可以创建的线程数较少,任务调度管理器也可以直接向新建的进程分配任务。
之后,任务调度管理器可以将未调度的任务分配给新建的进程进行处理。其中,若由于集群系统自身资源受限等原因,使得新建的全部进程能够创建的总线程数不足以处理全部未调度的任务,则任务调度管理器可以将部分未调度的任务分配给新建的进程,其余部分未调度的任务则可以在任务调度管理器中等待调度;若新建的全部进程能够创建的线程数可以处理全部的未调度的任务,任务调度管理器可以将全部的未调度的任务分配给新建的进程,也可以只将部分未调度的任务分配给新建的进程。
其中,在任务调度管理器分配任务给新建进程的过程中,无论新建进程中能够创建的总线程数是否足以处理全部当前未调度的任务,任务调度管理器均可以设定为在全部新建进程中包含的线程数到达最大线程数或者到达预设的阈值时,停止向新建进程分配任务,此时若当前全部的未调度的任务未被分配完毕,则可以在任务调度管理器中等待下一次的调度。需要说明的是,该阈值可以是全部新建进程能创建的最大线程数的93%,也可以是96%,技术人员可以根据具体情况设定该阈值,本实施例对该阈值不作限定。
需要说明的是,无论任务调度管理器处于调度任务状态或是停止调度任务的状态,各非新建进程都可以一直对已接收的任务进行处理,因此,任务调度管理器在新建进程期间或是新建进程后,各非新建进程中都可能会由于完成对任务的处理而释放出空闲线程,因此,若在任务调度管理器将任务调度给新建进程前,同一时刻的任务数量和非新建进程中的总空闲线程数不满足进程新建条件,那么即使新建进程已建成,任务调度管理器也可以不将未调度的任务分配至新建进程而改为将未调度的任务分配至非新建进程释放出的空闲线程。
本发明实施例公开的任务调度方法,可以获得当前未调度的任务的任务信息和任务调度设备中各进程的空闲处理资源信息;在所述任务信息和所述空闲处理资源信息的满足预设的进程新建条件时,新建至少一个进程;将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,实现了当处理当前未调度的任务需要的总资源与各进程当前空闲处理资源的总和的差值大于一定值而导致任务调度设备停止调度时,所述任务调度设备可以新建至少一个进程以保证所述任务调度设备对任务的持续调度,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。
基于图1所示的步骤,本实施例提供了另一种任务调度方法,该方法中:
可选的,所述预设的进程新建条件为:当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0。
因此,如图2a与图2b所示,步骤S200可以包括:
步骤S210:在所述任务信息和所述空闲处理资源信息满足当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0时,新建至少一个进程。
具体的,在当前未调度的任务数量不为0而非新建进程中已不能再创建线程时,任务调度管理器将新建进程。
在步骤S210之后,可选的,步骤S300可以包括如下分配方式一或分配方式二:
分配方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
分配方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;进一步,分配方式二还可以不将当前未调度的任务分配给非新建进程。
如图2a所示,根据分配方式一,步骤S300可以包括:步骤S310:将全部当前未调度的任务分配给所述新建的进程进行处理。
如图2b所示,根据分配方式二,步骤S300可以包括:步骤S320:将部分当前未调度的任务分配给所述新建的进程进行处理,不将当前未调度的任务分配给非新建进程。
具体的,根据步骤S210中预设的进程新建条件,非新建进程已不能创建线程,因此,任务调度管理器进行任务调度时,只能将未调度的任务分配给新建进程。
当新建的进程可以完全处理全部未调度的任务时,任务调度管理器可以根据分配方式一,将全部未调度的任务分配给新建的进程,也可以根据在分配方式二,将部分未调度的任务分配给新建的进程,不将未调度的任务分配给非新建进程。
当新建的进程不能完全处理全部未调度的任务时,任务调度管理器可以将部分未调度的任务分配给新建的进程。其中,任务调度管理器将部分未调度的任务分配给新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
本发明实施例公开的任务调度方法,通过将进程新建条件设定为当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0,使得任务调度管理器在新建进程后,可以将未调度的任务分配给新建的进程,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。
基于图1所示的步骤,本实施例提供了另一种任务调度方法,该方法中:
可选的,所述预设的进程新建条件为:当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值。
因此,如图3a、图3b、图3c和图3d所示,步骤S200可以包括:步骤S220:在所述任务信息和所述空闲处理资源信息满足当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值时,新建至少一个进程。
具体的,在当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值时,可以认为非新建进程已没有足够的资源来完成对全部未调度任务的处理,需要任务调度管理器及时新建进程来增加集群系统处理任务的容量和资源。其中,技术人员可以根据集群系统的处理能力等具体情况来设置第一预设阈值的数值,本发明在此不作限定。
在步骤S220之后,可选的,所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,包括如下分配方式一至分配方式四中的任一种:
分配方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
分配方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;进一步,分配方式二还可以不将当前未调度的任务分配给非新建进程;
具体的,根据步骤S220中预设的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部未调度的任务,也可以是不能完全处理全部当前未调度的任务。需要说明的是,在分配方式一或分配方式二中,任务调度管理器均只将未调度的任务分配给新建进程而不分配给非新建进程。其中,任务调度管理器将任务分配给新建进程的方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式三、将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
具体的,根据步骤S220中所述预设的进程新建条件,在任务调度管理器将任务均分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余的未调度的任务分配给新建进程。其中,任务调度管理器将未调度的任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式四、将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
具体的,根据步骤S220中所述预设的进程新建条件,在任务调度管理器将任务分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余未调度任务中的部分任务分配给新建进程。其中,任务调度管理器将任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
如图3a所示,根据分配方式一,步骤S300可以包括:步骤S310:将全部当前未调度的任务分配给所述新建的进程进行处理。
如图3b所示,根据分配方式二,步骤S300可以包括:步骤S320:将部分当前未调度的任务分配给所述新建的进程进行处理,不将当前未调度的任务分配给非新建进程。
如图3c所示,根据分配方式三,步骤S300可以包括:步骤S330:将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务。
如图3d所示,根据分配方式四,步骤S300可以包括:步骤S340:将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
本发明实施例公开的任务调度方法,通过将进程新建条件设定为当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
基于图1所示的步骤,本实施例提供了另一种任务调度方法,该方法中:
可选的,所述预设的进程新建条件为:当前未调度的任务的任务数量大于第二预设阈值。
因此,如图4a、图4b、图4c和图4d所示,步骤S200可以包括:步骤S230:在所述任务信息和所述空闲处理资源信息满足当前未调度的任务的任务数量大于第二预设阈值,新建至少一个进程。
具体的,在当前未调度的任务的任务数量大于所述第二预设阈值时,无论当前非新建进程中空闲线程数的数量为多少,均可以认为当前未调度的任务的任务数量足够多,且非新建进程极有可能不能完全承担全部当前任务,需要新建进程以避免出现任务调度管理器停止任务调度的情况。其中,技术人员可以根据集群系统的处理能力等具体情况来设置第二预设阈值的数值,本发明在此不作限定。
在步骤S230之后,可选的,所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,包括如下分配方式一至分配方式四中的任一种:
分配方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
分配方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;进一步,分配方式二还可以不将当前未调度的任务分配给非新建进程;
具体的,根据步骤S230中预设的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部当前未调度的任务,也可以是不能完全处理全部当前未调度的任务。需要说明的是,在分配方式一或分配方式二中,任务调度管理器均只将未调度的任务分配给新建进程而不分配给非新建进程。其中,任务调度管理器将任务分配给新建进程方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式三、将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
具体的,根据步骤S230中所述预设的进程新建条件,在任务调度管理器将任务分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余的全部未调度的任务分配给新建进程。其中,任务调度管理器将未调度的任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式四、将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
具体的,根据步骤S230中所述预设的进程新建条件,在任务调度管理器将任务分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余未调度任务中的部分任务分配给新建进程。其中,任务调度管理器将任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
如图4a所示,根据分配方式一,步骤S300可以包括:步骤S310:将全部当前未调度的任务分配给所述新建的进程进行处理。
如图4b所示,根据分配方式二,步骤S300可以包括:步骤S320:将部分当前未调度的任务分配给所述新建的进程进行处理,不将当前未调度的任务分配给非新建进程。
如图4c所示,根据分配方式三,步骤S300可以包括:步骤S330:将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务。
如图4d所示,根据分配方式四,步骤S300可以包括:步骤S340:将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
本发明实施例公开的任务调度方法,通过将进程新建条件设定为当前未调度的任务的任务数量大于第二预设阈值,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
基于图1所示的步骤,本实施例提供了另一种任务调度方法,该方法中:可选的,所述预设的进程新建条件为:所述各进程的空闲线程数小于第三预设阈值。
因此,如图5a、图5b、图5c和图5d,步骤S200可以包括:步骤S240:在所述各进程的空闲线程数小于第三预设阈值时,新建至少一个进程。
具体的,无论未调度的任务的任务数量为多少,只要非新建进程中空闲线程数的数量小于所述第三预设阈值,均可以认为非新建当前的空闲线程数足够少,非新建进程极有可能不能完全承担全部当前任务,需要新建进程以避免出现任务调度管理器停止任务调度的情况。其中,技术人员可以根据集群系统的处理能力等具体情况来设置第三预设阈值的数值,本发明在此不作限定。
在步骤S240之后,可选的,所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,包括如下分配方式一至分配方式四中的任一种:
分配方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
分配方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;进一步,分配方式二还可以不将当前未调度的任务分配给非新建进程;
具体的,根据步骤S240中预设的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部未调度的任务,也可以是不能完全处理全部当前未调度的任务。需要说明的是,在分配方式一或分配方式二中,任务调度管理器均只将未调度的任务分配给新建进程而不分配给非新建进程。其中,任务调度管理器将任务分配给新建进程的方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式三、将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
具体的,根据步骤S240中预设的进程新建条件,在任务调度管理器将任务均分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余的未调度的任务分配给新建进程。其中,任务调度管理器将未调度的任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
分配方式四、将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。其中,任务调度管理器对非新建进程和新建进程的任务分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
具体的,根据步骤S240中所述预设的进程新建条件,具体的,根据步骤 S220中所述预设的进程新建条件,在任务调度管理器将任务分配给非新建进程和新建进程的过程中,可以先将部分未调度的任务分配给非新建进程,再将剩余未调度任务中的部分任务分配给新建进程。其中,任务调度管理器将任务均分配给非新建进程和新建进程的分配方式及其过程在图1实施例所示方法中已有说明,此处不再赘述。
如图5a,根据分配方式一,步骤S300可以包括:
步骤S310:将全部当前未调度的任务分配给所述新建的进程进行处理。
如图5b,根据分配方式二,步骤S300可以包括:
步骤S320:将部分当前未调度的任务分配给所述新建的进程进行处理,不将当前未调度的任务分配给非新建进程。
根据5c,根据分配方式三,步骤S300可以包括:
步骤S330:将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
根据5d,根据分配方式四,步骤S300可以包括:步骤S340:将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
本发明实施例公开的任务调度方法,通过将进程新建条件设定所述各进程的空闲线程数小于第三预设阈值时,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
基于图1所示方法,如图6所示,在所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理之后,所述方法还包括:
S400、在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数小于第三预设阈值时,注销所述第一进程。
具体的,在任务调度管理器调度任务过程中,当未调度的任务数量小于所述第三预设阈值时,若某个进程中的线程均为空闲线程,即该进程当前未接收或处理任何的任务,那么无论该线程是新建进程或是非新建进程,任务调度管理器均可以将该进程进行注销以回收资源其中,技术人员可以根据集群系统的自身资源、处理能力和历史平均任务数量等具体情况来设置第三预设阈值的数值,本发明在此不作限定。需要说明的是,步骤S400同样适用于本实施例上述提出的其它任务调度方法。本实施例通过在当前未调度的任务的任务数量小于一定值时将未接收或未处理任何任务的进程注销以回收资源,避免了资源的浪费和有效提高了资源利用率。
与图1所示方法相对应,本发明实施例提供了一种任务调度设备,如图7 所示,该设备可以包括:信息获得模块001、进程新建模块002和任务分配模块003,其中:
所述信息获得模块001,用于获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
具体的,所述信息获得模块001中的任务信息可以为任务数量,空闲处理资源信息可以为空闲线程数。即:所述信息获得模块001可以具体用于:获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
所述进程新建模块002,用于在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
所述任务分配模块003,用于将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理。
具体的,在分布式集群任务调度模式下,若当前未调度的任务的任务数量和全部进程中还可以创建的总线程数满足技术人员预先设定的条件时,由任务调度管理器根据未调度的任务数量和各进程中还能创建的线程数进行计算,根据获得的计算结果和集群系统的自身资源决定新建的进程数,之后,任务调度管理器可以注册并新建进程。
之后,任务调度管理器在进行任务调度时,若非新建进程还可以创建线程,任务调度管理器可以先将部分未调度的任务分配给非新建进程,由非新建进程创建线程以进行任务处理。若全部非新建进程包含的线程数已到达最大线程数,则任务调度管理器可以直接向新建的进程分配任务。
之后,任务调度管理器可以将未调度的任务分配给新建的进程进行处理。其中,若由于集群系统自身资源受限等原因,使得新建的全部进程能够创建的总线程数不足以处理全部未调度的任务,则任务调度管理器可以将部分未调度的任务分配给新建的进程,其余部分未调度的任务则可以在任务调度管理器中等待调度;若新建的全部进程能够创建的线程数可以处理全部的未调度的任务,任务调度管理器可以将全部的未调度的任务分配给新建的进程,也可以只将部分未调度的任务分配给新建的进程。
本发明实施例公开的任务调度设备,可以获得当前未调度的任务的任务信息和任务调度设备中各进程的空闲处理资源信息;在所述任务信息和所述空闲处理资源信息的满足预设的进程新建条件时,新建至少一个进程;将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,实现了当处理当前未调度的任务需要的总资源与各进程当前空闲处理资源的总和的差值大于一定值而导致任务调度设备停止调度时,所述任务调度设备可以新建至少一个进程以保证所述任务调度设备对任务的持续调度,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。
基于图7所示的任务调度设备,本实施例提供的另一种任务调度设备中,所述预设的进程新建条件为如下条件中的任一个:
条件一、当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0;
具体的,在当前未调度的任务数量不为0而非新建进程中已不能再创建线程时,任务调度管理器将新建进程。
条件二、当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值;
具体的,在当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值时,可以认为非新建进程已没有足够的资源来完成对全部未调度任务的处理,需要任务调度管理器及时新建进程来增加集群系统处理任务的容量和资源。
条件三、当前未调度的任务的任务数量大于第二预设阈值;
具体的,在当前未调度的任务的任务数量大于所述第二预设阈值时,无论当前非新建进程中空闲线程数的数量为多少,均可以认为当前未调度的任务的任务数量足够多,且非新建进程极有可能不能完全承担全部当前任务,需要新建进程以避免出现任务调度管理器停止任务调度的情况。
条件四、所述各进程的空闲线程数小于第三预设阈值。
具体的,无论未调度的任务的任务数量为多少,只要非新建进程中空闲线程数的数量小于所述第三预设阈值,均可以认为非新建当前的空闲线程数足够少,非新建进程极有可能不能完全承担全部当前任务,需要新建进程以避免出现任务调度管理器停止任务调度的情况。
基于上述预设的进程新建条件,该任务调度设备中的任务分配模块,可以具体包括:第一分配模块、第二分配模块、第三分配模块和第四分配模块中的至少一个,其中:
所述第一分配模块,用于将全部当前未调度的任务分配给所述新建的进程进行处理;
所述第二分配模块,用于将部分当前未调度的任务分配给所述新建的进程进行处理;进一步的,所述第二分配模块还可以用于不将未调度的任务分配给非新建进程。
所述第三分配模块,用于将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
所述第四分配模块,用于将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
与图2a和2b所示方法对应,本实施例提出了另一种任务调度设备,如图 8a、图8b或8c,该任务调度设备中预设的进程新建条件为当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0,该任务调度设备中的任务分配模块003可以具体包括所述第一分配模块004和所述第二分配模块005中的至少一个。
具体的,根据当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0的进程新建条件,非新建进程已不能创建线程,因此,任务调度管理器进行任务调度时,只能将未调度的任务分配给新建进程。当新建的进程可以完全处理全部未调度的任务时,任务调度管理器可以根据所述第一分配模块004,将全部未调度的任务分配给新建的进程,也可以根据所述第二分配模块005,将部分未调度的任务分配给新建的进程,不将未调度的任务分配给非新建进程。当新建的进程不能完全处理全部未调度的任务时,任务调度管理器可以根据所述第二分配模块005将部分未调度的任务分配给新建的进程。
本发明实施例公开的任务调度设备,通过将进程新建条件设定为当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0,使得任务调度管理器在新建进程后,可以将未调度的任务分配给新建的进程,使得未调度的任务得到及时处理,保证集群系统的任务处理效率。
与图3a、3b、3c和3d所示方法相对应,本实施例提出了另一种任务调度设备,该任务调度设备中预设的进程新建条件为当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值,任务分配模块003可以具体包括所述第一分配模块004、所述第二分配模块005、所述第三分配模块和所述第四分配模块中的至少一个。
具体的,根据当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部当前未调度的任务,也可以是不能完全处理全部当前未调度的任务。因此,针对不同情况,该任务调度设备可以根据第一分配模块004、所述第二分配模块005、所述第三分配模块或所述第四分配模块中的一种进行任务调度。
本发明实施例公开的任务调度方法,通过将进程新建条件设定为当前未调度的任务的任务数量大于第二预设阈值,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
与图4a、4b、4c和4d所示方法相对应,本实施例提出了另一种任务调度设备,该任务调度设备中预设的进程新建条件为当前未调度的任务的任务数量大于第二预设阈值,该任务调度设备中的任务分配模块003可以具体包括所述第一分配模块004、所述第二分配模块005、所述第三分配模块和所述第四分配模块中的至少一个。
具体的,根据当前未调度的任务的任务数量大于第二预设阈值的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部当前未调度的任务,也可以是不能完全处理全部当前未调度的任务。因此,针对不同情况,该任务调度设备可以根据第一分配模块004、所述第二分配模块005、所述第三分配模块或所述第四分配模块中的一种进行任务调度。
本发明实施例公开的任务调度设备,通过将进程新建条件设定为当前未调度的任务的任务数量大于第二预设阈值,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
与图5a、5b、5c和5d所示方法相对应,本实施例提出了另一种任务调度设备,该任务调度设备中预设的进程新建条件为所述各进程的空闲线程数小于第三预设阈值,该任务调度设备中的任务分配模块003可以具体包括所述第一分配模块004、所述第二分配模块005、所述第三分配模块和所述第四分配模块中的至少一个。
具体的,根据所述各进程的空闲线程数小于第三预设阈值的进程新建条件,任务调度管理器在新建进程时,非新建进程中已创建的线程数可以是已达到最大线程数,也可以是未达到。另外,新建的进程可以是能完全处理全部当前未调度的任务,也可以是不能完全处理全部当前未调度的任务。因此,针对不同情况,该任务调度设备可以根据第一分配模块004、所述第二分配模块005、所述第三分配模块或所述第四分配模块中的一种进行任务调度。
本发明实施例公开的任务调度设备,通过将进程新建条件设定所述各进程的空闲线程数小于第三预设阈值时,使得任务调度管理器在新建进程后,根据非新建进程是否能创建线程和新建进程是否能完全处理全部未调度的任务,可以选择将部分或全部未调度的任务分配给新建的进程,或者选择将部分或全部未调度的任务均分配给非新建的进程和新建进程,使得未调度的任务可以得到及时处理,保证集群系统的任务处理效率。
对应于图6所示方法,本实施例提出了另一种任务调度设备,如图9所示,该设备还包括:进程注销模块006,所述进程注销模块006用于在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数小于第三预设阈值时,注销所述第一进程。
具体的,在任务调度管理器调度任务过程中,当未调度的任务数量小于所述第三预设阈值时,若某个进程中的线程均为空闲线程,即该进程当前未接收或处理任何的任务,那么无论该线程是新建进程或是非新建进程,任务调度管理器均可以将该进程进行注销以回收资源。
需要说明的是,所述进程注销模块006也可以设置于本发明实施例提供的其它任务调度设备中。本实施例通过在当前未调度的任务的任务数量小于一定值时将未接收或未处理任何任务的进程注销以回收资源,避免了资源的浪费和有效提高了资源利用率。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种任务调度方法,其特征在于,应用于任务调度设备,所述方法包括:
获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理。
2.根据权利要求1所述的方法,其特征在于,所述获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息,包括:
获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
3.根据权利要求2所述的方法,其特征在于,所述预设的进程新建条件为如下条件中的任一个:
条件一、当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0;
条件二、当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值;
条件三、当前未调度的任务的任务数量大于第二预设阈值;
条件四、所述各进程的空闲线程数小于第三预设阈值。
4.根据权利要求3所述的方法,其特征在于,所述将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理,包括如下分配方式中的任一种:
方式一、将全部当前未调度的任务分配给所述新建的进程进行处理;
方式二、将部分当前未调度的任务分配给所述新建的进程进行处理;
方式三、将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
方式四、将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
5.根据权利要求1至4所述的任一方法,其特征在于,所述方法还包括:在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数量小于第三预设阈值时,注销所述第一进程。
6.一种任务调度设备,其特征在于,包括:信息获得模块、进程新建模块和任务分配模块,其中:
所述信息获得模块,用于获得当前未调度的任务的任务信息和所述任务调度设备中各进程的空闲处理资源信息;
所述进程新建模块,用于在所述任务信息和所述空闲处理资源信息满足预设的进程新建条件时,新建至少一个进程;
所述任务分配模块,用于将部分或全部当前未调度的任务分配给至少一个新建的进程进行处理。
7.根据权利要求6所述的设备,其特征在于,所述信息获得模块,具体用于获得当前未调度的任务的任务数量和所述任务调度设备中各进程的空闲线程数。
8.根据权利要求7所述的设备,其特征在于,所述预设的进程新建条件为如下条件中的任一个:
条件一、当前未调度的任务的任务数量不为0且所述各进程的空闲线程数为0;
条件二、当前未调度的任务的任务数量减去所述各进程的空闲线程数之和后得到的差值大于第一预设阈值;
条件三、当前未调度的任务的任务数量大于第二预设阈值;
条件四、所述各进程的空闲线程数小于第三预设阈值。
9.根据权利要求8所述的设备,其特征在于,所述任务分配模块,具体包括第一分配模块、第二分配模块、第三分配模块和第四分配模块中的至少一个,其中:
所述第一分配模块,用于将全部当前未调度的任务分配给所述新建的进程进行处理;
所述第二分配模块,用于将部分当前未调度的任务分配给所述新建的进程进行处理;
所述第三分配模块,用于将第一部分所述当前未调度的任务分配给所述新建的进程进行处理,将第二部分所述当前未调度的任务所述当前未调度的任务分配给非新建进程进行处理,其中,所述第一部分与所述第二部分的所述当前未调度的任务的集合为全部所述当前未调度的任务;
所述第四分配模块,用于将第三部分所述当前未调度的任务分配给所述新建的进程进行处理,将第四部分所述当前未调度的任务分配给非新建进程进行处理,其中,所述第三部分与所述第四部分的所述当前未调度的任务的集合为部分所述当前未调度的任务。
10.根据权利要求7至9所述的任一种设备,其特征在于,还包括进程注销模块,所述进程注销模块用于在所述任务调度设备中的第一进程中的各线程均为空闲线程且当前未调度的任务的任务数小于第三预设阈值时,注销所述第一进程。
CN201811603523.XA 2018-12-26 2018-12-26 一种任务调度方法及任务调度设备 Pending CN109684064A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811603523.XA CN109684064A (zh) 2018-12-26 2018-12-26 一种任务调度方法及任务调度设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811603523.XA CN109684064A (zh) 2018-12-26 2018-12-26 一种任务调度方法及任务调度设备

Publications (1)

Publication Number Publication Date
CN109684064A true CN109684064A (zh) 2019-04-26

Family

ID=66189715

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811603523.XA Pending CN109684064A (zh) 2018-12-26 2018-12-26 一种任务调度方法及任务调度设备

Country Status (1)

Country Link
CN (1) CN109684064A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727509A (zh) * 2019-09-24 2020-01-24 浙江大搜车软件技术有限公司 任务调度方法、装置、计算机设备和存储介质
CN113127163A (zh) * 2019-12-31 2021-07-16 杭州海康威视数字技术股份有限公司 模型验证方法、装置及电子设备
CN114792186A (zh) * 2021-12-31 2022-07-26 第四范式(北京)技术有限公司 生产排产仿真方法及其装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810048A (zh) * 2014-03-11 2014-05-21 国家电网公司 一种面向资源利用最优的线程数量自动调整方法及装置
CN104750543A (zh) * 2013-12-26 2015-07-01 杭州华为数字技术有限公司 线程创建方法、业务请求处理方法及相关设备
CN105095299A (zh) * 2014-05-16 2015-11-25 北京奇虎科技有限公司 图片抓取方法和系统
CN105843886A (zh) * 2016-03-21 2016-08-10 国电南瑞科技股份有限公司 一种基于多线程的电网离线模型数据查询方法
US9940161B1 (en) * 2007-07-27 2018-04-10 Dp Technologies, Inc. Optimizing preemptive operating system with motion sensing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9940161B1 (en) * 2007-07-27 2018-04-10 Dp Technologies, Inc. Optimizing preemptive operating system with motion sensing
CN104750543A (zh) * 2013-12-26 2015-07-01 杭州华为数字技术有限公司 线程创建方法、业务请求处理方法及相关设备
CN103810048A (zh) * 2014-03-11 2014-05-21 国家电网公司 一种面向资源利用最优的线程数量自动调整方法及装置
CN105095299A (zh) * 2014-05-16 2015-11-25 北京奇虎科技有限公司 图片抓取方法和系统
CN105843886A (zh) * 2016-03-21 2016-08-10 国电南瑞科技股份有限公司 一种基于多线程的电网离线模型数据查询方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727509A (zh) * 2019-09-24 2020-01-24 浙江大搜车软件技术有限公司 任务调度方法、装置、计算机设备和存储介质
CN113127163A (zh) * 2019-12-31 2021-07-16 杭州海康威视数字技术股份有限公司 模型验证方法、装置及电子设备
CN114792186A (zh) * 2021-12-31 2022-07-26 第四范式(北京)技术有限公司 生产排产仿真方法及其装置

Similar Documents

Publication Publication Date Title
CN109684064A (zh) 一种任务调度方法及任务调度设备
CN104699542B (zh) 任务处理方法及系统
JP3717967B2 (ja) プロセス機械の制御とスケジューリングを行う装置と方法
Mendez et al. An MILP framework for batch reactive scheduling with limited discrete resources
CN104778080A (zh) 基于协处理器的作业调度处理方法及装置
CN104077638B (zh) 一种龙门吊车的调度方法
CN112230677B (zh) 无人机族群任务规划方法及终端设备
CN104462302A (zh) 一种分布式数据处理协调方法及系统
CN110888407A (zh) 一种agv调度系统中的任务分配方法及装置
CN110991846A (zh) 服务人员任务分配方法、装置、设备及存储介质
CN108762903A (zh) 一种面向海量工作节点的抢占式任务调度方法及系统
CN107423914A (zh) 一种基于云制造的任务调度方法及系统
CN108536530A (zh) 一种多线程任务调度方法及装置
CN109242179B (zh) 一种基于流量控制的智能调度方法
JP5749561B2 (ja) スケジューリング装置及びプログラム
CN106598707A (zh) 任务调度优化方法
Chatterjee et al. Work capacity of freelance markets: Fundamental limits and decentralized schemes
CN109598411B (zh) 一种产品设计任务的处理方法及电子设备
Srinoi et al. A fuzzy logic modelling of dynamic scheduling in FMS
CN112990624A (zh) 一种任务分配方法、装置、设备及存储介质
CN109636097A (zh) 一种产品设计任务的分配方法及装置
CN115629854A (zh) 分布式任务调度方法、系统、电子设备和存储介质
Zhang et al. Time bound control in a stochastic dynamic wafer fab
CN114331011A (zh) 一种多队列模型派单系统、方法及基于网络流的派单算法
CN101136766B (zh) 一种电信网管系统中任务调度的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190426