CN109725993A - 任务执行方法、装置、设备及计算机可读存储介质 - Google Patents
任务执行方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109725993A CN109725993A CN201810566303.8A CN201810566303A CN109725993A CN 109725993 A CN109725993 A CN 109725993A CN 201810566303 A CN201810566303 A CN 201810566303A CN 109725993 A CN109725993 A CN 109725993A
- Authority
- CN
- China
- Prior art keywords
- task
- execution
- pending
- rule
- scheduling
- 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
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种任务执行方法、装置、设备及计算机可读存储介质,该方法包括步骤:当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。本发明通过调度任务调度规则配置表中的调度规则执行各个任务,实现了各个任务的自动执行,提高了任务的执行效率,降低了业务执行所需的人工成本。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务执行方法、装置、设备及计算机可读存储介质。
背景技术
目前,每种业务的执行都设置到多个任务,如准备金业务可能有十几个,二十几个,甚至更多的任务,而某些复杂的业务,可能会设置到上百个任务。而目前各个业务对应任务的执行需要用户手动执行。在各个业务对应系统的显示界面中,都存在对应的任务按钮,一个按钮对应着一种任务。如若在4月1号,该业务需要执行10个任务,则需要用户在4月1号手动点击这10个任务对应的按钮,以执行该业务对应的10个任务。由此可知,现有业务对应的任务的执行效率低下。
发明内容
本发明的主要目的在于提供一种任务执行方法、装置、设备及计算机可读存储介质,旨在解决现有的任务执行效率低下的技术问题。
为实现上述目的,本发明提供一种任务执行方法,所述任务执行方法包括步骤:
当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;
根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;
当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
优选地,所述当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的待执行任务的步骤之后,还包括:
获取已执行任务的任务标识,根据所述任务标识对应获取所述已执行任务的执行日志,其中,所述待执行任务被执行后,成为所述已执行任务;
提取所述执行日志中的执行标识,根据所述执行标识确定所述已执行任务是否执行成功。
优选地,所述提取所述执行日志中的执行标识,根据所述执行标识确定所述已执行任务是否执行成功的步骤之后,还包括:
若确定所述已执行任务执行失败,则获取所述已执行任务对应的执行数据;
根据所述已执行任务对应的执行数据重新执行所述已执行任务。
优选地,所述当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务的步骤包括:
当检测到调度所述任务调度规则配置表的调度指令后,获取当前的可用中央处理器CPU资源,判断所述可用CPU资源是否小于或者等于预设阈值;
若所述可用CPU资源小于或者等于预设阈值,则确定当前的执行规则为每次执行一个所述待执行任务;
若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务;
根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
优选地,所述若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务的步骤之后,还包括:
获取预设的所述可用CPU资源与执行任务数量之间的映射表;
根据所述可用CPU资源,基于所述映射表确定同步执行的所述待执行任务对应的待执行任务数量;
所述根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务的步骤包括:
根据所述执行规则调度所述任务调度规则配置表中与所述待执行任务数量对应的调度规则,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
优选地,所述根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表的步骤包括:
根据所述执行数据设置所述待执行任务对应的执行时间、执行频率和与其它待执行任务之间的依赖关系生成所述待执行任务对应的调度规则;
根据所述调度规则生成所述任务调度规则配置表。
优选地,所述根据所述执行数据设置所述待执行任务对应的执行时间、执行频率和与其它待执行任务之间的依赖关系生成所述待执行任务对应的调度规则的步骤包括:
根据所述待执行任务在预设时长内每次被执行的时间点、执行时长和与其它待执行任务之间的依赖关系设置所述执行时间;
根据所述待执行任务在所述预设时长内被执行的次数设置所述执行频率;
根据所述执行时间、所述执行频率和所述待执行任务与其它待执行任务之间的依赖关系生成与所述待执行任务对应的调度规则。
此外,为实现上述目的,本发明还提供一种任务执行装置,所述任务执行装置包括:
获取模块,用于当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;
设置模块,用于根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;
调度模块,用于当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
此外,为实现上述目的,本发明还提供一种任务执行设备,所述任务执行设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的任务执行程序,所述任务执行程序被所述处理器执行时实现如上所述的任务执行方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有任务执行程序,所述任务执行程序被处理器执行时实现如上所述的任务执行方法的步骤。
本发明通过根据各个任务对应的执行数据设置各个任务对应的调度规则,生成对应的任务调度规则配置表,通过调度任务调度规则配置表中的调度规则执行各个任务,实现了各个任务的自动执行,提高了任务的执行效率,降低了业务执行所需的人工成本。
附图说明
图1为本发明任务执行方法第一实施例的流程示意图;
图2为本发明任务执行方法第二实施例的流程示意图;
图3为本发明任务执行装置较佳实施例的功能示意图模块图;
图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种任务执行方法,参照图1,图1为本发明任务执行方法第一实施例的流程示意图。
本发明实施例提供了任务执行方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
任务执行方法可应用于终端或者服务器中,终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、等移动终端,以及诸如数字TV、台式计算机等固定终端。在任务执行方法的各个实施例中,为了便于描述,以终端为执行主体进行阐述各个实施例。任务执行方法包括:
步骤S10,当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据。
终端检测是否侦测到设置任务调度配置表的设置指令。当终端侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据。执行数据包括但不限于各个业务对应的待执行任务的执行时间点、待执行任务的类别、执行时长、各个待执行任务之间的依赖关系和各个待执行任务执行的前置条件。执行时间点和执行时长为预设时间段内的待执行任务每次被执行的时间点和执行时长。预设时间段可根据具体需要而设置,如可设置为30天或者50天等。该设置指令可由用户根据需要手动触发,也可设置定时任务定时触发。
执行时间点为用户手动执行待执行任务时,用户点击该待执行任务对应按钮的点击时间点。待执行任务的类别可根据对应业务的类型来确定。如当业务为准备金业务时,可根据准备金的类型来确定待执行任务所属的类别,如若将准备金业务分为法定准备金和超额准备金,则对应的待执行任务的类别有法定准备金对应的待执行任务和超额准备金对应的待执行任务。可以理解的是,为了区别不同类别的待执行任务,在各个待执行任务中,都携带有对应的类别标识,通过该类别标识即可确定待执行任务的类别。执行时长为待执行任务在开始执行到结束执行这段时间的时长。
在本实施例中,可根据各个待执行任务之间的输入来确定两个待执行任务是否具有依赖关系,若某个待执行任务的输入是另一个待执行任务的输出,则确定这两个待执行任务有依赖关系。进一步地,还可以预先设置好各个待执行任务之间依赖关系,通过各个待执行任务所携带的依赖标识来确定各个具有依赖关系的待执行任务。如当某五个待执行任务对应的依赖标识为A1,A2,A3,B1和B2时,可确定A1,A2和A3具有依赖关系,B1和B2具有依赖关系。其中,“A”和“B”表示不同依赖关系的依赖标识,“1”、“2”,“3”等数字表示各个待执行任务依赖关系的排序,即在携带A1,A2和A3依赖标识对应的待执行任务中,携带A1的待执行任务的输出是携带A2的待执行任务的输入,携带A2的待执行任务的输出是携带A3的待执行任务的输入。各个待执行任务执行的前置条件可根据各个待执行任务的执行时间来确定,如当A待执行任务的执行时间早于B待执行任务时,确定A待执行任务为B待执行任务的前置条件。可以理解的是,若两个待执行任务存在依赖关系,则确定这两个待执行任务中一个待执行任务是另一个待执行任务的前置条件,但是两个待执行任务存在前置条件关系,并不意味着这两个待执行任务必然存在依赖关系。
进一步地,在本实施例中,为了提高获取执行数据的获取效率,终端在获取执行数据过程中,根据执行数据的属性从对应的数据库中获取对应的执行数据,并将所获取的执行数据存储至一个数据库中。如可根据执行时间点和执行时长对应的时间属性从存储各个待执行任务执行的开始时间和结束时间的数据库中获取对应的执行时间点和执行时长。可以理解的是,执行时间点就是各个待执行任务的开始时间。
步骤S20,根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表。
当终端获取到执行数据后,根据所获取的执行数据设置各个待执行任务对应的调度规则,并根据各个待执行任务的调度规则生成任务调度规则配置表。在本实施例中,为了区分任务调度规则配置表中不同待执行任务对应的调度规则,为各个待执行任务对应的调度规则设置任务标识,通过该任务标识可以唯一确定待执行任务对应的调度规则。本实施例对任务标识的具体表现形式不做具体限制。
进一步地,步骤S20包括:
步骤a,根据所述执行数据设置所述待执行任务对应的执行时间、执行频率、所属任务分组和执行优先级,以生成所述待执行任务对应的调度规则。
当终端获取到执行数据后,终端根据执行数据设置各个待执行任务对应的执行时间、执行频率、所属任务分组和执行优先级,以根据各个待执行任务对应的执行时间、执行频率、所属任务分组和执行优先级生成对应调度规则。可以理解的是,当生成待执行任务对应的调度规则后,即可知道对应的待执行任务何时执行,执行多长时间,多久执行一次;在执行某个分组任务时,是否需要执行该待执行任务;在执行待执行任务过程中,是否需要遵照优先级的规定。需要说明的是,在待执行任务对应的调度规则中,执行时间包括了该待执行任务的起始时间和结束时间。
步骤b,根据所述调度规则生成所述任务调度规则配置表。
当终端得到各个待执行任务对应的调度规则后,终端根据各个待执行任务对应的调度规则生成任务调度规则配置表。
进一步地,步骤a包括:
步骤a1,根据所述待执行任务在预设时长内每次被执行的时间点、执行时长和与其它待执行任务之间的依赖关系设置所述执行时间。
终端根据各个待执行任务在预设时长内每次被执行的时间点和执行时长设置执行时间。其中,执行时间包括执行的起始时间和结束时间,预设时长可根据具体需要而设置,在本实施例中不做具体限制。如在预设时长内待执行任务一共被执行了3次,每次执行时长分别为a、b和c,则该待执行任务对应调度规则的调度时长=(a+b+c)÷3;或者选取a、b和c中的最大值作为该待执行任务对应调度规则的调度时长。
终端判断该待执行任务与其它待执行任务之间是否存在依赖关系。若该待执行任务与其它待执行任务之间存在依赖关系,终端则根据依赖关系、该待执行任务在预设时长内每次被执行的时间点和所调度时长设置对应的执行时间。具体地,如某个业务有5个待执行任务,分别为A、B、C、D和E,若当时需要设置执行时间的待执行任务为B,且B与D存在依赖关系,B的输入为D的输出,则在设置B的执行时间时,需要获取D的结束时间,并将B的执行时间对应的起始时间设置在D的结束时间之后。终端计算B在预设时长内每次被执行的起始时间对应的平均时间点,该平均时间点与D的结束时间进行对比。若该平均时间点在D的结束时间之前,终端则将B的执行对应的起始时间设置在D的结束时间之后;若该平均时间点在D的结束时间之前,终端则将该平均时间点作为B执行时间对应的起始时间,对应的结束时间等于调度时长减去起始时间。
步骤a2,根据所述待执行任务在所述预设时长内被执行的次数设置所述执行频率。
终端根据待执行任务在预设时长内被执行的次数设置待执行任务的执行频率。如若确定该待执行任务在30天内被执行的次数为60次,则确定待执行任务的执行频率=60÷30=2,即待执行任务对应的执行频率为每天执行2次;如若确定该待执行任务在30天内被执行的次数为15次,则确定待执行任务的执行频率=15÷30=0.5,即待执行任务对应的执行频率为每隔两天执行1次。
需要说明的是,若一天需要执行多次待执行任务,则该待执行任务对应存在多个执行时间。
步骤a3,根据所述执行时间、所述执行频率和所述待执行任务与其它待执行任务之间的依赖关系生成与所述待执行任务对应的调度规则。
当终端得到待执行任务的执行时间和执行频率后,终端根据待执行任务的执行时间、执行频率和待执行任务与其它待执行任务之间的依赖关系生成与待执行任务对应的调度规则。需要说明的是,由于调度规则中设置了该待执行任务的执行时间、执行频率和待执行任务与其它待执行任务之间的依赖关系,因此,当终端调用该待执行任务对应的调度规则时,即可按照该调度规则中预先设置好的执行时间、执行频率和待执行任务与其它待执行任务之间的依赖关系执行该待执行任务。
进一步,任务执行方法还包括:
步骤a4,按照预设分组规则确定所述待执行任务所属任务分组。
终端在生成待执行任务对应的调度规则过程中,终端按照预设分组规则确定待执行任务所属任务分组。其中,预设分组规则可为按照待执行任务对应的执行时间的起始时间确定待执行任务所属任务分组。具体地,将一天的时间划分成预设个时间段,将执行时间的起始时间属于同一个时间段的待执行任务划分为同一分组。如将一天的时间划分为Aa、Ba、Cc和Dd四个时间段,则将执行时间的起始时间在Aa时间段内所需执行的待执行任务分为A组,Ba时间段所需执行的待执行任务分为B组,依此类推。预设分组规则还可为根据执行频率确定待执行任务所属任务分组。具体地,可将每天执行一次的待执行任务划分为一组,将多天执行一次的待执行任务划分为一组,将一天执行多次的待执行任务划分为一组。
步骤a5,按照预设的优先级规则为各个分组中的待执行任务设置对应的执行优先级。
当终端确定各个待执行任务所属任务分组后,终端按照预设的优先级规则为各个分组中的待执行任务设置对应的执行优先级。其中预设的优先级规则可根据具体需要而设置,如可根据每个分组中各个待执行任务执行时间的起始时间的先后顺序从前到后设置对应待执行任务的执行优先级;或者根据各个待执行任务是否与其它待执行任务存在依赖关系设置执行优先级,将与其它待执行任务存在依赖关系的待执行任务设置为高执行优先级,将与其它待执行任务未存在依赖关系的待执行任务设置为低优先级,以便于先执行与其它任务存在依赖关系的待执行任务,以保证在较短时间内执行所有需要执行的任务。或者根据各个待执行任务执行过程中所需占用CPU(Central Processing Unit,中央处理器)的大小设置执行优先级。如终端将所需占用CPU在a-b区间的待执行任务的执行优先级设置为第一优先级;将所需占用资源在b-c区间的待执行任务的执行优先级设置为第二优先级;将所需占用资源在c-d区间的待执行任务的执行优先级设置为第三优先级。其中,a>b>c>d,第一优先级高于第二优先级,第二优先级高于第三优先级,即将执行过程中需要占用CPU多的任务先执行。
需要说明的是,在设置优先级的过程中,应保证各个任务之间的依赖关系,但可不考虑该分组内各个待执行任务执行时间中起始时间的先后顺序。
步骤S30,当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
终端实时检测是否侦测到调度任务调度规则配置表的调度指令,其中,调度指令可由用户根据需要手动触发,或者在终端中设置定时任务,通过该定时任务自动触发该调度指令。当终端检测到调度任务调度规则配置表的调度指令后,根据该调度指令调度该任务调度规则配置表,遍历任务调度规则配置表中的调度规则,根据任务调度规则配置表中的各个调度规则执行对应的待执行任务。可以理解的是,当任务调度规则配置表中的某个调度规则符合调度条件时,终端会根据该调度规则自动执行对应的待执行任务。
进一步地,为了便于用户根据需要来决定是否需要通过任务调度规则配置表来执行待执行任务,在终端中设置具备启动和关闭任务调度规则配置表的功能按键,用户可通过点击该功能按键触发启动任务调度规则配置表的启动指令,以及触发关闭任务调度规则配置表的关闭指令。可以理解的是,当关闭任务调度规则配置表之后,用户只能通过点击各个待执行任务对应的按钮来执行任务。
本实施例通过根据各个任务对应的执行数据设置各个任务对应的调度规则,生成对应的任务调度规则配置表,通过调度任务调度规则配置表中的调度规则执行各个任务,实现了各个任务的自动执行,提高了任务的执行效率,降低了业务执行所需的人工成本。
进一步地,提出本发明任务执行方法第二实施例。
所述任务执行方法第二实施例与所述任务执行方法第一实施例的区别在于,参照图2,任务执行方法还包括:
步骤S40,获取已执行任务的任务标识,根据所述任务标识对应获取所述已执行任务的执行日志,其中,所述待执行任务被执行后,成为所述已执行任务。
当终端执行完待执行任务后,将执行过的待执行任务记为已执行任务,即待执行任务被执行后,成为已执行任务。终端获取已执行任务的任务标识,并根据该任务标识对应获取该已执行任务的执行日志。其中,每一任务都对应着一个任务标识,通过该任务标识可唯一确定某一个任务,在各个任务对应的执行日志中,会携带有对应的任务标识。可以理解的是,当终端执行某个待执行任务后,会生成与该待执行任务对应的执行日志。
步骤S50,提取所述执行日志中的执行标识,根据所述执行标识确定所述已执行任务是否执行成功。
当终端获取到执行日志后,提取执行日志中的执行标识,根据该执行标识确定已执行任务是否执行成功。具体地,当终端确定执行日志中的执行标识为第一执行标识时,终端确定已执行任务执行成功;当终端确定执行日志中的执行标识为第二执行标识时,终端确定已执行任务执行失败。其中,本实施例不限制第一执行标识和第二执行标识的具体表现形式,如第一执行标识可设置为“11”,第二执行标识可设置为“00”,或者将第一执行标识设置为“true”,将第二执行标识设置为“false”。
本实施例通过执行日志中执行标识来确定已执行任务是否执行成功,以便于用户可以快速确定各个任务是否被成功执行,监控各个任务的执行情况。
进一步地,任务执行方法还包括:
步骤c,若确定所述已执行任务执行失败,则获取所述已执行任务对应的执行数据。
若终端根据执行标识确定已执行任务执行失败,终端则从数据库中获取已执行任务对应的执行数据。
步骤d,根据所述已执行任务对应的执行数据重新执行所述已执行任务。
当终端获取到已执行任务对应的执行数据后,终端根据已执行任务对应的执行数据重新执行已执行任务。进一步地,若终端根据执行标识确定已执行任务执行失败,终端可根据该已执行任务对应的任务标识在任务调度规则配置表中查找对应的调度规则,根据该调度规则快速重新执行该执行失败的已执行任务。
通过在确定某个任务执行失败后,自动重新执行该执行失败的任务,提高了任务执行的成功率。
进一步地,提出本发明任务执行方法第三实施例。
所述任务执行方法第三实施例与所述任务执行方法第一或第二实施例的区别在于,参照图3,步骤S30还包括:
步骤e,当检测到调度所述任务调度规则配置表的调度指令后,获取当前的可用中央处理器CPU资源,判断所述可用CPU资源是否小于或者等于预设阈值。
当终端检测到调度任务调度规则配置表的调度指令后,获取其当前的可用CPU资源,并判断该可用CPU资源是否小于或者等于预设阈值。其中,预设阈值是根据终端未运行任何应用程序时,全部可用CPU资源来确定的。在本实施例中,预设阈值对应的具体数值可根据具体需要而设置。
步骤f,若所述可用CPU资源小于或者等于预设阈值,则确定当前的执行规则为每次执行一个所述待执行任务。
若终端确定当前的可用CPU资源小于或者等于预设阈值,终端则确定当前的执行待执行任务的执行规则为每次执行一个待执行任务。
步骤g,若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务。
若终端确定当前可用CPU资源大于预设阈值,终端则确定当前执行待执行任务的执行规则为同步执行预设数量的待执行任务。其中,预设数量可根据具体需要而设置,如可设置为同步执行2个待执行任务,或者同步执行3个待执行任务等。
步骤h,根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
当终端确定执行待执行任务的执行规则后,终端根据执行规则调度任务调度规则配置表,以根据任务调度规则配置表中的各个调度规则执行对应的待执行任务。如当确定执行规则为同步执行预设数量的待执行任务时,终端在任务调度规则配置表中同步调度满足调度条件的多个调度规则,对应执行所调度的多个调度规则对应的待执行任务。可以理解的是,当终端同步执行多个待执行任务时,同步执行的待执行任务可为不同业务对应的任务,也可为同一业务对应的不同任务。需要说明的是,当可用CPU资源大于预设阈值时,只表明终端有同步执行多个待执行任务的权限,若此时任务调度规则配置表中不存在多个满足调度条件的调度规则,终端也只会调度满足调度条件的调度规则,执行与该满足调度条件调度规则对应的待执行任务。其中,当调度规则对应的执行时间、执行频率和依赖关系等符合条件,则确定该调度规则满足调度条件。
可以理解的是,若终端未不具备同步执行多个待执行任务的权限,且任务调度规则配置表中同时存在至少两个满足调度条件的调度规则,终端则根据待执行任务对应的优先级来决定满足调度条件的调度规则调度的先后顺序。若两个待执行任务对应的优先级相同,则不限制这两个待执行任务对应调度规则调度的先后顺序。
本实施例通过可用CPU资源的大小决定是否同步执行多个待执行任务还是执行一个待执行任务,以实现了根据可用CPU资源来执行待执行任务,提高了待执行任务的执行效率。
进一步地,任务执行方法还包括:
步骤i,获取预设的所述可用CPU资源与执行任务数量之间的映射表。
若终端确定当前的执行规则为同步执行预设数量的待执行任务,终端则获取预设的可用CPU资源与执行任务数量之间的映射表。如在映射表中,当可用CPU资源小于A时,对应的执行任务数量为2;当可用CPU资源大于或者等于A,小于B时,对应的执行任务数量为3;当可用CPU资源大于或者等于B,小于C时,对应的执行任务数量为4,其中,A<B<C。
步骤j,根据所述可用CPU资源,基于所述映射表确定同步执行的所述待执行任务对应的待执行任务数量。
当终端获取到其当前可用CPU资源时,通过可用CPU资源与执行任务数量之间的映射表确定同步执行的待执行任务对应的待执行任务数量。
步骤S34包括:
步骤k,根据所述执行规则调度所述任务调度规则配置表中与所述待执行任务数量对应的调度规则,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
终端根据执行规则调度任务调度规则配置表中与待执行任务数量对应的调度规则,以根据任务调度规则配置表中的各个调度规则执行对应的待执行任务。
本实施例通过可用CPU资源与执行任务数量之间的映射表确定可同步执行的任务数量,以便于更好地利用终端当前可用的CPU资源,进一步提高任务的执行效率。
此外,参照图3,本发明还提供一种任务执行装置,所述任务执行装置包括:
获取模块10,用于当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;
设置模块20,用于根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;
调度模块30,用于当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
进一步地,所述获取模块10还用于获取已执行任务的任务标识,根据所述任务标识对应获取所述已执行任务的执行日志,其中,所述待执行任务被执行后,成为所述已执行任务;
任务执行装置还包括:
提取模块,用于提取所述执行日志中的执行标识;
确定模块,用于根据所述执行标识确定所述已执行任务是否执行成功。
进一步地,所述获取模块10还用于若确定所述已执行任务执行失败,则获取所述已执行任务对应的执行数据;
任务执行装置还包括:
执行模块,用于根据所述已执行任务对应的执行数据重新执行所述已执行任务。
进一步地,所述调度模块30包括:
获取单元,用于当检测到调度所述任务调度规则配置表的调度指令后,获取当前的可用中央处理器CPU资源;
判断单元,用于判断所述可用CPU资源是否小于或者等于预设阈值;
确定单元,用于若所述可用CPU资源小于或者等于预设阈值,则确定当前的执行规则为每次执行一个所述待执行任务;若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务;
调度单元,用于根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
进一步地,获取单元还用于获取预设的所述可用CPU资源与执行任务数量之间的映射表;
所述确定单元还用于根据所述可用CPU资源,基于所述映射表确定同步执行的所述待执行任务对应的待执行任务数量;
所述调度单元还用于根据所述执行规则调度所述任务调度规则配置表中与所述待执行任务数量对应的调度规则,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
进一步地,所述设置模块20包括:
设置单元,用于根据所述执行数据设置所述待执行任务对应的执行时间、执行频率和与其它待执行任务之间的依赖关系生成所述待执行任务对应的调度规则;
生成单元,用于根据所述调度规则生成所述任务调度规则配置表。
进一步地,所述设置单元还用于根据所述待执行任务在预设时长内每次被执行的时间点、执行时长和与其它待执行任务之间的依赖关系设置所述执行时间;根据所述待执行任务在所述预设时长内被执行的次数设置所述执行频率;根据所述执行时间、所述执行频率和所述待执行任务与其它待执行任务之间的依赖关系生成与所述待执行任务对应的调度规则。
需要说明的是,任务执行装置的各个实施例与上述任务执行方法的各实施例基本相同,在此不再详细赘述。
此外,本发明还提供一种任务执行设备。如图4所示,图4是本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图4即可为任务执行设备的硬件运行环境的结构示意图。本发明实施例任务执行设备可以是PC,便携计算机等终端设备。
如图4所示,该任务执行设备可以包括:处理器1001,例如CPU,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,任务执行设备还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。
本领域技术人员可以理解,图4中示出的任务执行设备结构并不构成对任务执行设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及任务执行程序。其中,操作系统是管理和控制任务执行设备硬件和软件资源的程序,支持任务执行程序以及其它软件或程序的运行。
在图4所示的任务执行设备中,用户接口1003主要用于获取设置指令和调度指令等;网络接口1004主要用于获取执行数据等;处理器1001可以用于调用存储器1005中存储的任务执行程序,并执行如上所述的任务执行方法的步骤。
本发明任务执行设备具体实施方式与上述任务执行方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有任务执行程序,所述任务执行程序被处理器执行时实现如上所述的任务执行方法的步骤。
本发明计算机可读存储介质具体实施方式与上述任务执行方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种任务执行方法,其特征在于,所述任务执行方法包括以下步骤:
当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;
根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;
当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
2.如权利要求1所述的任务执行方法,其特征在于,所述当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的待执行任务的步骤之后,还包括:
获取已执行任务的任务标识,根据所述任务标识对应获取所述已执行任务的执行日志,其中,所述待执行任务被执行后,成为所述已执行任务;
提取所述执行日志中的执行标识,根据所述执行标识确定所述已执行任务是否执行成功。
3.如权利要求2所述的任务执行方法,其特征在于,所述提取所述执行日志中的执行标识,根据所述执行标识确定所述已执行任务是否执行成功的步骤之后,还包括:
若确定所述已执行任务执行失败,则获取所述已执行任务对应的执行数据;
根据所述已执行任务对应的执行数据重新执行所述已执行任务。
4.如权利要求1所述的任务执行方法,其特征在于,所述当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务的步骤包括:
当检测到调度所述任务调度规则配置表的调度指令后,获取当前的可用中央处理器CPU资源,判断所述可用CPU资源是否小于或者等于预设阈值;
若所述可用CPU资源小于或者等于预设阈值,则确定当前的执行规则为每次执行一个所述待执行任务;
若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务;
根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
5.如权利要求4所述的任务执行方法,其特征在于,所述若所述可用CPU资源大于所述预设阈值,则确定当前的执行规则为同步执行预设数量的所述待执行任务的步骤之后,还包括:
获取预设的所述可用CPU资源与执行任务数量之间的映射表;
根据所述可用CPU资源,基于所述映射表确定同步执行的所述待执行任务对应的待执行任务数量;
所述根据所述执行规则调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务的步骤包括:
根据所述执行规则调度所述任务调度规则配置表中与所述待执行任务数量对应的调度规则,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
6.如权利要求1至5任一项所述的任务执行方法,其特征在于,所述根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表的步骤包括:
根据所述执行数据设置所述待执行任务对应的执行时间、执行频率和与其它待执行任务之间的依赖关系生成所述待执行任务对应的调度规则;
根据所述调度规则生成所述任务调度规则配置表。
7.如权利要求6所述的任务执行方法,其特征在于,所述根据所述执行数据设置所述待执行任务对应的执行时间、执行频率和与其它待执行任务之间的依赖关系生成所述待执行任务对应的调度规则的步骤包括:
根据所述待执行任务在预设时长内每次被执行的时间点、执行时长和与其它待执行任务之间的依赖关系设置所述执行时间;
根据所述待执行任务在所述预设时长内被执行的次数设置所述执行频率;
根据所述执行时间、所述执行频率和所述待执行任务与其它待执行任务之间的依赖关系生成与所述待执行任务对应的调度规则。
8.一种任务执行装置,其特征在于,所述任务执行装置包括:
获取模块,用于当侦测到设置任务调度配置表的设置指令后,获取待执行任务对应的执行数据;
设置模块,用于根据所述执行数据设置所述待执行任务对应调度规则,根据所述调度规则生成任务调度规则配置表;
调度模块,用于当检测到调度所述任务调度规则配置表的调度指令后,调度所述任务调度规则配置表,以根据所述任务调度规则配置表中的各个调度规则执行对应的所述待执行任务。
9.一种任务执行设备,其特征在于,所述任务执行设备包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的任务执行程序,所述任务执行程序被所述处理器执行时实现如权利要求1至7中任一项所述的任务执行方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有任务执行程序,所述任务执行程序被处理器执行时实现如权利要求1至7中任一项所述的任务执行方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810566303.8A CN109725993A (zh) | 2018-06-01 | 2018-06-01 | 任务执行方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810566303.8A CN109725993A (zh) | 2018-06-01 | 2018-06-01 | 任务执行方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109725993A true CN109725993A (zh) | 2019-05-07 |
Family
ID=66293793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810566303.8A Pending CN109725993A (zh) | 2018-06-01 | 2018-06-01 | 任务执行方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109725993A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188023A (zh) * | 2019-05-21 | 2019-08-30 | 联想(北京)有限公司 | 资源健康检查方法和资源健康检查装置 |
CN110532081A (zh) * | 2019-09-02 | 2019-12-03 | 政采云有限公司 | 一种定时任务处理方法及装置 |
CN110688206A (zh) * | 2019-09-05 | 2020-01-14 | 平安科技(深圳)有限公司 | 定时任务调度方法、装置、计算机设备及存储介质 |
CN111124648A (zh) * | 2019-12-24 | 2020-05-08 | 宁波三星医疗电气股份有限公司 | 多任务执行方法和装置 |
CN111552545A (zh) * | 2020-04-15 | 2020-08-18 | 北京宝兰德软件股份有限公司 | 任务的执行处理方法、装置、电子设备及存储介质 |
CN111679898A (zh) * | 2020-06-08 | 2020-09-18 | 中国银行股份有限公司 | 定时任务的调度方法、装置、计算机设备及可读存储介质 |
CN111815200A (zh) * | 2020-07-31 | 2020-10-23 | 深圳壹账通智能科技有限公司 | 任务调度方法及装置、计算机设备、存储介质 |
CN111966477A (zh) * | 2020-08-18 | 2020-11-20 | 浙江知水信息技术有限公司 | 一种在多个服务器环境下预警任务分配的方法 |
CN112799794A (zh) * | 2019-11-14 | 2021-05-14 | 马上消费金融股份有限公司 | 一种大数据调度方法、装置、系统和存储装置 |
CN112799646A (zh) * | 2021-02-09 | 2021-05-14 | 北京字节跳动网络技术有限公司 | 任务运行方法及设备 |
CN113342493A (zh) * | 2021-06-15 | 2021-09-03 | 上海哔哩哔哩科技有限公司 | 任务执行方法、装置及计算机设备 |
CN115981865A (zh) * | 2022-12-29 | 2023-04-18 | 广州趣研网络科技有限公司 | 一种业务资源调度方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110246998A1 (en) * | 2008-12-08 | 2011-10-06 | Kpit Cummins Infosystems Ltd | Method for reorganizing tasks for optimization of resources |
US20110321051A1 (en) * | 2010-06-25 | 2011-12-29 | Ebay Inc. | Task scheduling based on dependencies and resources |
CN105511958A (zh) * | 2014-10-11 | 2016-04-20 | 阿里巴巴集团控股有限公司 | 任务的调度方法及装置 |
CN105589874A (zh) * | 2014-10-22 | 2016-05-18 | 阿里巴巴集团控股有限公司 | Etl任务依赖关系的检测方法、装置及etl工具 |
CN106815066A (zh) * | 2015-11-30 | 2017-06-09 | 阿里巴巴集团控股有限公司 | 一种定时任务调度方法、装置及系统 |
CN107168806A (zh) * | 2017-06-29 | 2017-09-15 | 上海联影医疗科技有限公司 | 分发调度机的资源调度方法、系统以及计算机设备 |
US20180032376A1 (en) * | 2016-07-27 | 2018-02-01 | Samsung Electronics Co .. Ltd. | Apparatus and method for group-based scheduling in multi-core processor system |
-
2018
- 2018-06-01 CN CN201810566303.8A patent/CN109725993A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110246998A1 (en) * | 2008-12-08 | 2011-10-06 | Kpit Cummins Infosystems Ltd | Method for reorganizing tasks for optimization of resources |
US20110321051A1 (en) * | 2010-06-25 | 2011-12-29 | Ebay Inc. | Task scheduling based on dependencies and resources |
CN105511958A (zh) * | 2014-10-11 | 2016-04-20 | 阿里巴巴集团控股有限公司 | 任务的调度方法及装置 |
CN105589874A (zh) * | 2014-10-22 | 2016-05-18 | 阿里巴巴集团控股有限公司 | Etl任务依赖关系的检测方法、装置及etl工具 |
CN106815066A (zh) * | 2015-11-30 | 2017-06-09 | 阿里巴巴集团控股有限公司 | 一种定时任务调度方法、装置及系统 |
US20180032376A1 (en) * | 2016-07-27 | 2018-02-01 | Samsung Electronics Co .. Ltd. | Apparatus and method for group-based scheduling in multi-core processor system |
CN107168806A (zh) * | 2017-06-29 | 2017-09-15 | 上海联影医疗科技有限公司 | 分发调度机的资源调度方法、系统以及计算机设备 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110188023A (zh) * | 2019-05-21 | 2019-08-30 | 联想(北京)有限公司 | 资源健康检查方法和资源健康检查装置 |
CN110532081A (zh) * | 2019-09-02 | 2019-12-03 | 政采云有限公司 | 一种定时任务处理方法及装置 |
CN110532081B (zh) * | 2019-09-02 | 2022-03-22 | 政采云有限公司 | 一种定时任务处理方法及装置 |
CN110688206A (zh) * | 2019-09-05 | 2020-01-14 | 平安科技(深圳)有限公司 | 定时任务调度方法、装置、计算机设备及存储介质 |
CN112799794A (zh) * | 2019-11-14 | 2021-05-14 | 马上消费金融股份有限公司 | 一种大数据调度方法、装置、系统和存储装置 |
CN111124648A (zh) * | 2019-12-24 | 2020-05-08 | 宁波三星医疗电气股份有限公司 | 多任务执行方法和装置 |
CN111124648B (zh) * | 2019-12-24 | 2023-08-22 | 宁波三星医疗电气股份有限公司 | 多任务执行方法和装置 |
CN111552545A (zh) * | 2020-04-15 | 2020-08-18 | 北京宝兰德软件股份有限公司 | 任务的执行处理方法、装置、电子设备及存储介质 |
CN111679898A (zh) * | 2020-06-08 | 2020-09-18 | 中国银行股份有限公司 | 定时任务的调度方法、装置、计算机设备及可读存储介质 |
CN111815200A (zh) * | 2020-07-31 | 2020-10-23 | 深圳壹账通智能科技有限公司 | 任务调度方法及装置、计算机设备、存储介质 |
CN111966477A (zh) * | 2020-08-18 | 2020-11-20 | 浙江知水信息技术有限公司 | 一种在多个服务器环境下预警任务分配的方法 |
CN112799646A (zh) * | 2021-02-09 | 2021-05-14 | 北京字节跳动网络技术有限公司 | 任务运行方法及设备 |
CN113342493A (zh) * | 2021-06-15 | 2021-09-03 | 上海哔哩哔哩科技有限公司 | 任务执行方法、装置及计算机设备 |
CN113342493B (zh) * | 2021-06-15 | 2022-09-20 | 上海哔哩哔哩科技有限公司 | 任务执行方法、装置及计算机设备 |
CN115981865A (zh) * | 2022-12-29 | 2023-04-18 | 广州趣研网络科技有限公司 | 一种业务资源调度方法、装置、电子设备及存储介质 |
CN115981865B (zh) * | 2022-12-29 | 2024-05-07 | 广州趣研网络科技有限公司 | 一种业务资源调度方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109725993A (zh) | 任务执行方法、装置、设备及计算机可读存储介质 | |
CN107193750B (zh) | 一种脚本录制方法和装置 | |
CN109901920A (zh) | 任务调度方法及装置、电子终端 | |
CN106293914B (zh) | 一种任务调度的方法及终端 | |
CN106155806B (zh) | 一种多任务调度方法及服务器 | |
CN104199730B (zh) | 一种基于同步i/o复用机制的单线程多任务处理方法 | |
WO2014193657A1 (en) | Systems and methods for moving display objects based on user gestures | |
CN110022399B (zh) | 消息展示方法、装置、用户终端及可读存储介质 | |
CN108647143A (zh) | Mock接口测试方法、装置、计算机设备以及存储介质 | |
CN108804484A (zh) | 数据审批方法、设备和计算机可读存储介质 | |
CN107765853A (zh) | 应用关闭方法、装置、存储介质及电子设备 | |
CN110765288A (zh) | 一种图像信息同步方法、装置、系统及存储介质 | |
CN110347427A (zh) | 网页代码的优化方法及装置 | |
CN113535364A (zh) | 任务调度方法及装置 | |
CN115576828A (zh) | 一种测试用例生成方法、装置、设备及存储介质 | |
CN114866506A (zh) | 展示虚拟形象的方法、装置及电子设备 | |
CN107368406A (zh) | 测试应用程序的方法、装置及设备 | |
CN112363919B (zh) | 用户界面ai自动化测试方法、装置、设备和存储介质 | |
KR20150113572A (ko) | 영상데이터를 획득하는 전자장치 및 방법 | |
CN109885473A (zh) | 自动化测试方法及装置、终端和计算机可读存储介质 | |
CN107797835A (zh) | 对消息进行处理的方法及装置 | |
CN113190427A (zh) | 卡顿监控方法、装置、电子设备及存储介质 | |
EP3048519A1 (en) | Electronic device and method for displaying object in electronic device | |
KR101753314B1 (ko) | 이미지 매칭 학습을 이용한 어플리케이션 테스트 방법 및 이를 수행하기 위한 장치 | |
US20160313910A1 (en) | Method and device for organizing a plurality of items on an electronic device |
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 |