任务管理方法及装置、存储介质及电子设备制造方法及图纸

技术编号:31496689 阅读:12 留言:0更新日期:2021-12-18 12:39
本发明专利技术提供一种任务管理方法及装置、存储介质及电子设备,该方法包括:当接收到第一调度任务时,获取各个第一目标任务;基于每个第一目标任务的执行时间,确定每个第一目标任务在队列数据库中所属的待执行队列,以及确定每个第一目标任务的排序值;基于每个第一目标任务的排序值,将每个第一目标任务加入其所属的待执行队列中;当接收到第二调度任务时,在各个待执行队列中获取各个第二目标任务,并将各个第二目标任务向任务使用端发送。本发明专利技术基于排序值将任务加入对应的待执行队列,使用排序值,提高了查询任务的速度,并且使用待执行队列,实现了任务的分片管理,减少确定向任务使用端发送的任务所花时间,提高了对任务的处理效率。效率。效率。

【技术实现步骤摘要】
任务管理方法及装置、存储介质及电子设备


[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]将在所述目标队列中位于前N个的各个第一目标任务均确定为第二目标任务。
[0028]上述的方法,可选的,所述将各个所述第二目标任务向任务使用端发送,包括:
[0029]基于各个第二目标任务,得到任务消息队列;
[0030]读取所述任务消息队列中的第一个第二目标任务,并将该第二目标任务作为当前任务;
[0031]将所述当前任务向所述任务使用端发送,并确定所述当前任务是否发送成功;
[0032]若所述当前任务发送成功,则生成表征所述当前任务发送成功的发送信息,并读取所述任务消息队列中的下一个第二目标任务,并将该第二目标任务作为当前任务,返回执行将所述当前任务向所述任务使用端发送,并确定所述当前任务是否发送成功的操作,直至读取完所述任务消息队列中的各个第二目标任务;
[0033]若所述当前任务发送不成功,则重新将所述当前任务向所述任务使用端发送,直至发送所述当前任务的次数大于或等于所述当前任务的预设次数时,生成表征所述当前任务发送失败的发送信息,并读取所述任务消息队列中的下一个第二目标任务,并将该第二目标任务作为当前任务,返回执行将所述当前任务向所述任务使用端发送,并确定所述当前任务是否发送成功的操作,直至读取完所述任务消息队列中的各个第二目标任务。
[0034]上述的方法,可选的,还包括:
[0035]对于每个所述当前任务,若所述当前任务的发送信息表征所述当前任务发送成功,则将所述当前任务确定为成功任务,并将该成功任务添加至成功队列中;若所述当前任务的发送信息表征所述当前任务发送失败,则将所述当前任务确定为失败任务,并将所述失败任务添加至失败队列中。
[0036]上述的方法,可选的,还包括:
[0037]确定所述成功队列中队列状态为未读取状态的各个成功任务,并将每个所述队列
状态为未读取状态的成功任务均确定为待更新任务;
[0038]对于每个所述待更新任务,将在所述任务数据库中与该待更新任务对应的业务任务的任务状态更新为发送成功状态,并将该待更新任务的队列状态更新为已读取状态。
[0039]一种任务管理装置,包括:
[0040]第一获取单元,用于当接收到任务调度中心发送的第一调度任务时,从预先生成并保存在任务数据库中的各个业务任务中获取各个第一目标任务;
[0041]第一确定单元,用于基于每个所述第一目标任务的执行时间,确定每个所述第一目标任务在队列数据库中所属的待执行队列,以及确定每个所述第一目标任务的排序值;
[0042]添加单元,用于基于每个所述第一目标任务的排序值,将每个第一目标任务加入其所属的待执行队列中;
[0043]发送单元,用于当接收到所述任务调度中心发送的第二调度任务时,在各个所述待执行队列中获取各个第二目标任务,并将各个所述第二目标任务向任务使用端发送。
[0044]上述的装置,可选的,所述第一获取单元,包括:
[0045]第一确定子单元,用于确定所述第一调度任务的筛选时间段;
[0046]第二确定子单元,用于确定每个业务任务的执行时间;
[0047]第三确定子单元,用于将执行时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务管理方法,其特征在于,包括:当接收到任务调度中心发送的第一调度任务时,从预先生成并保存在任务数据库中的各个业务任务中获取各个第一目标任务;基于每个所述第一目标任务的执行时间,确定每个所述第一目标任务在队列数据库中所属的待执行队列,以及确定每个所述第一目标任务的排序值;基于每个所述第一目标任务的排序值,将每个第一目标任务加入其所属的待执行队列中;当接收到所述任务调度中心发送的第二调度任务时,在各个所述待执行队列中获取各个第二目标任务,并将各个所述第二目标任务向任务使用端发送。2.根据权利要求1所述的方法,其特征在于,所述从预先生成并保存在任务数据库中的各个业务任务中获取各个第一目标任务,包括:确定所述第一调度任务的筛选时间段;确定每个业务任务的执行时间;将执行时间处于所述筛选时间段中的业务任务确定为筛选任务;确定每个所述筛选任务的任务状态,并将任务状态为未执行状态的筛选任务确定为第一目标任务。3.根据权利要求1所述的方法,其特征在于,所述确定每个所述第一目标任务的排序值,包括:确定每个所述第一目标任务的参照时间以及预设重试次数;基于每个所述第一目标任务的参数时间、执行时间以及预设重试次数进行处理,得到每个所述第一目标任务的排序值。4.根据权利要求1所述的方法,其特征在于,业务任务的生成过程,包括:当接收到业务系统发送的任务创建请求时,获取与所述任务创建请求对应的任务数据;基于所述任务数据生成与所述任务创建请求对应的业务任务;基于所述业务任务的执行时间,判断所述业务任务是否满足预设的预处理条件;若所述业务任务满足预设的预处理条件,则确定所述业务任务所属的待执行队列,将所述业务任务插入所述待执行队列,以及确定所述业务任务的任务状态为预处理状态,并将任务状态为预处理状态的业务任务保存至所述任务数据库中;若所述业务任务不满足预设的预处理条件,则将所述业务任务的任务状态确定为未执行状态,并将该业务任务保存在所述任务数据库中。5.根据权利要求1所述的方法,其特征在于,所述在各个所述待执行队列中获取各个第二目标任务,包括:在各个所述待执行队列中确定目标队列;将在所述目标队列中位于前N个的各个第一目标任务均确定为第二目标任务。6.根据权利要求1所述的方法,其特征在于,所述将各个所述第二目标任务向任务使用端发送,包括:基于各个第二目标任务,得到任务消息队列;读取所述任务消息队列中的第一个第二目标任务,并将该第二目标任务作为当前任
务;将所述当前任务向所述任务使用端发送,并确定所述当前任务是否发送成功;若所述当前任务发送成...

【专利技术属性】
技术研发人员:刘锋雷张翠
申请(专利权)人:京东科技控股股份有限公司
类型:发明
国别省市:

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

1