一种任务调度方法、装置、设备和存储介质制造方法及图纸

技术编号:36601120 阅读:21 留言:0更新日期:2023-02-04 18:15
本申请公开一种任务调度方法、装置、设备和存储介质,通过确定当前处于工作状态的目标队列,将目标队列所对应的优先级作为第一优先级;在预定的时间节点上判断数据库中是否存在队列优先级级别高于第一优先级的第一待插入任务;若存在,则将队列优先级级别最高的各个第一待插入任务作为第一目标任务;将队列集合中与第一目标任务所对应的队列优先级级别相同的队列作为第一队列,确定第一新任务插入至第一队列,停止目标队列的工作并启动第一队列的工作;若不存在,则判断数据库中是否存在与第一优先级对应的第二目标任务;若存在,则确定第二新任务插入至目标队列。该方案确保数据库中的任务可以及时被处理,保证任务的处理效率。率。率。

【技术实现步骤摘要】
一种任务调度方法、装置、设备和存储介质


[0001]本申请涉及任务调度
,具体涉及一种任务调度方法、装置、设备和存储介质。

技术介绍

[0002]优先级(priority)是一种约定,优先级高的任务优先处理,优先级低的任务靠后处理。优先级是计算机分时操作系统在处理多个任务程序时,决定各个任务程序接受系统资源的优先等级的参数。在任务调度
中,数据库中的各个任务在其产生时即决定了各自所对应的队列优先级,即数据库中各个任务会按照各自所对应的队列优先级插入至拥有相同队列优先级的队列中,同时各个队列会按照各自所对应的队列优先级的级别高低依次进行工作。
[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]优选地,所述第一新任务插入模块包括:
[0041]第一任务数量确定模块,用于确定与所述第一队列对应的第一任务数量;所述第一任务数量为所述第一队列需要插入的第一新任务的数量;
[0042]第一新任务选择模块,用于基于所述第一任务数量,从各个所述第一目标任务中进行选择,将选择出的各个第一目标任务作为各个第一新任务插入至所述第一队列。
[0043]第三本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务调度方法,其特征在于,包括:确定已建立的队列集合中当前处于工作状态的目标队列,所述队列集合中设置有多个队列,每个所述队列包含有与其对应的队列优先级;将所述目标队列所对应的队列优先级作为第一优先级;在预定的时间节点上,判断预设的数据库中是否存在所对应的队列优先级级别高于所述第一优先级的各个第一待插入任务,所述数据库中设置有多个任务,每个所述任务包含有与其对应的队列优先级;若存在,则将各个所述第一待插入任务中所对应的队列优先级级别最高的各个第一待插入任务作为各个第一目标任务;将所述队列集合中与所述各个第一目标任务所对应的队列优先级级别相同的队列作为第一队列,从各个所述第一目标任务中确定各个第一新任务插入至所述第一队列,停止所述目标队列的工作并启动所述第一队列的工作;若不存在,则判断所述数据库中是否存在与所述第一优先级对应的各个第二目标任务;若所述数据库中存在与所述第一优先级对应的各个第二目标任务,则从各个所述第二目标任务中确定各个第二新任务插入至所述目标队列。2.根据权利要求1所述的方法,其特征在于,所述从各个所述第一目标任务中确定各个第一新任务插入至所述第一队列,包括:确定与所述第一队列对应的第一任务数量;所述第一任务数量为所述第一队列需要插入的第一新任务的数量;基于所述第一任务数量,从各个所述第一目标任务中进行选择,将选择出的各个第一目标任务作为各个第一新任务插入至所述第一队列。3.根据权利要求2所述的方法,其特征在于,所述确定与所述第一队列对应的第一任务数量,包括:获取所述第一队列在两个所述预定的时间节点之间所消耗的任务的数量,将所述消耗的任务的数量作为第一消耗数量;确定当前所述第一队列中存在的任务的数量,将所述存在的任务的数量作为第二消耗数量;根据所述第一消耗数量和所述第二消耗数量,确定与所述第一队列对应的第一任务数量。4.根据权利要求3所述的方法,其特征在于,所述根据所述第一消耗数量和所述第二消耗数量,确定与所述第一队列对应的第一任务数量,包括:若所述第二消耗数量大于所述第一消耗数量,则所述第一队列对应的第一任务数量为第一预设值;若所述第二消耗数量为第二预设阈值,则所述第一队列对应的第一任务数量为所述第二任务数量与第三预设值的乘积;若所述第二消耗数量大于所述第二预设值,且不小于所述第一消耗数量,则将所述第一消耗数量作为所述第一队列对应的第一任务数量。5.根据权利要求2所述的方法,其特征在于,所述基于所述第一任务数量,从各个所述第一目标任务中进行选择,将选择出的各个第一目标任务作为各个第一新任务插入至所述
第一队列,包括:获取各个所述第一目标任务产生的时间;根据各个所述第一目标任务产生的时间,按照预设的排序规则将各个所述第一目标任务进行排序,得到第一顺序;基于所述第一顺序和...

【专利技术属性】
技术研发人员:孙子文
申请(专利权)人:广州文远知行科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1