一种定时任务处理方法、装置、设备、存储介质制造方法及图纸

技术编号:33290647 阅读:12 留言:0更新日期:2022-05-01 00:08
本申请公开了一种定时任务处理方法、装置、设备及存储介质,包括:获取系统业务流程生成的待执行定时任务;通过预设时间轮索引计算程序计算时间轮的当前时间与待执行定时任务的任务执行时间的时间差,以得到待执行定时任务对应的时间轮索引并将时间轮索引保存在时间轮索引表;从时间轮索引表中扫描时间轮索引,以确定时间轮索引对应的待执行定时任务,并将待执行任务存放至本地预先创建的预设任务队列;获取时间轮索引对应的预设任务队列中的待执行定时任务,以便任务执行器执行待执行定时任务。通过预先计算出待执行定时任务的时间轮索引,然后利用时间轮扫描时间轮索引确定待执行定时任务,减少定位待执行定时任务的时间及出现服务宕机的情况。间及出现服务宕机的情况。间及出现服务宕机的情况。

【技术实现步骤摘要】
一种定时任务处理方法、装置、设备、存储介质


[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]图1为本申请公开的一种定时任务处理方法流程图;
[0035]图2为本申请公开的一种具体的定时任务处理方法流程图;
[0036]图3为本申请公开的一种具体的定时任务处理方法流程图;
[0037]图4为本申请公开的一种客户关系管理系统流程图;
[0038]图5为本申请公开的一种定时任务处理装置结构图;
[0039]图6为本申请公开的一种电子设备结构图。...

【技术保护点】

【技术特征摘要】
1.一种定时任务处理方法,其特征在于,包括:获取系统业务流程生成的待执行定时任务;通过预设时间轮索引计算程序计算时间轮的当前时间与待执行定时任务的任务执行时间的时间差,以得到所述待执行定时任务对应的时间轮索引并将所述时间轮索引保存在时间轮索引表;从所述时间轮索引表中扫描所述时间轮索引,以确定所述时间轮索引对应的所述待执行定时任务,并将所述待执行任务存放至本地预先创建的预设任务队列;获取所述时间轮索引对应的所述预设任务队列中的所述待执行定时任务,以便任务执行器执行所述待执行定时任务。2.根据权利要求1所述的定时任务处理方法,其特征在于,所述从所述时间轮索引表中扫描所述时间轮索引,以确定所述时间轮索引对应的所述待执行定时任务,并将所述待执行任务存放至本地预先创建的预设任务队列,包括:从所述时间轮索引表中扫描所述时间轮索引,并基于所述时间轮索引所在的所述时间轮索引表与预设数据库的映射关系从所述预设数据库筛选出所述当前时间所有的所述待执行定时任务,然后将所述待执行任务存放至本地预先创建的预设任务队列。3.根据权利要求1所述的定时任务处理方法,其特征在于,所述通过预设时间轮索引计算程序计算时间轮的当前时间与待执行定时任务的任务执行时间的时间差,以得到所述待执行定时任务对应的时间轮索引并将所述时间轮索引保存在时间轮索引表,包括:通过预设时间轮索引计算程序计算时间轮的当前时间与待执行定时任务的任务执行时间的时间差,以得到所述待执行定时任务对应的时间轮索引;将所述待执行定时任务的任务名称和所述任务执行时间存储在与所述时间轮索引对应的预设数据库中。4.根据权利要求3所述的定时任务处理方法,其特征在于,所述将所述待执行定时任务的任务名称和所述任务执行时间存储在与所述时间轮索引对应的预设数据库中,包括:根据所述待执行定时任务的所述任务执行时间与所述时间轮的当前时间的时间差将所述待执行定时任务分为不同时间差级别的所述待执行定时任务,并将所述待执行定时任务将按照时间差级别分类存储在对应预设数据库中。5.根据...

【专利技术属性】
技术研发人员:汪金洋
申请(专利权)人:上海销氪信息科技有限公司
类型:发明
国别省市:

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

1