基于多线程的定时任务运行方法、装置、设备及存储介质与流程

文档序号:23805908发布日期:2021-02-03 09:08阅读:来源:国知局

技术特征:
1.一种基于多线程的定时任务运行方法,其特征在于,所述基于多线程的定时任务运行方法包括:获取多个定时任务与执行时刻,所述多个定时任务为财务管理系统发出的多个任务;基于每个定时任务读取对应的业务数据量,基于每个业务数据量将对应的定时任务拆分为多个子定时任务;基于预先设置好的数据库锁和多个预先设置好的运行线程创建多个临时子节点编号;当目标子定时任务在所述执行时刻被触发时,基于所述多个临时子节点编号和所述数据库锁在多个运行线程中确定目标运行线程;通过所述数据库锁更新所述目标子定时任务的状态为工作状态,并通过所述目标运行线程执行所述目标子定时任务,得到与所述目标子定时任务对应的目标任务数据。2.根据权利要求1所述的基于多线程的定时任务运行方法,其特征在于,所述基于预先设置好的数据库锁和多个预先设置好的运行线程创建多个临时子节点编号包括:读取预先设置好的数据库锁的名称,得到数据库锁名称,并创建以所述数据库锁名称命名路径的父节点;在所述父节点的路径下创建与每个运行线程对应的临时子节点,并读取每个临时子节点的路径;基于每个临时子节点的路径创建与每个临时子节点对应的临时子节点编号,得到多个临时子节点编号。3.根据权利要求2所述的基于多线程的定时任务运行方法,其特征在于,所述当目标子定时任务在所述执行时刻被触发时,基于所述多个临时子节点编号和所述数据库锁在多个运行线程中确定目标运行线程包括:当目标子定时任务在所述执行时刻被触发时,在所述多个临时子节点编号中搜寻最小的临时子节点编号,将所述最小的临时子节点编号确定为目标子节点编号;基于所述目标子节点编号确定对应的运行线程为目标运行线程。4.根据权利要求1所述的基于多线程的定时任务运行方法,其特征在于,所述通过所述数据库锁更新所述目标子定时任务的状态为工作状态,并通过所述目标运行线程执行所述目标子定时任务,得到与所述目标子定时任务对应的目标任务数据包括:调整所述数据库锁的记录为工作记录,从而将所述目标子定时任务的状态更新为工作状态;通过所述目标运行线程确定所述目标子定时任务对应的目标数据哈希值;根据所述目标数据哈希值确定与所述目标子定时任务对应的目标任务数据。5.根据权利要求4所述的基于多线程的定时任务运行方法,其特征在于,所述通过所述目标运行线程确定所述目标子定时任务对应的目标数据哈希值包括:从所述目标子定时任务中读取目标子定时任务编号,并通过所述目标运行线程在多个预置的数据分区中确定与所述目标子定时任务编号对应的目标数据分区,所述目标子定时任务编号与所述目标数据分区的编号相同;通过所述目标运行线程在所述目标数据分区中确定目标数据键名;基于预置的哈希函数结合所述目标数据键名和所述目标子定时任务的编号计算哈希值,得到目标哈希值。
6.根据权利要求1所述的基于多线程的定时任务运行方法,其特征在于,在所述获取多个定时任务与执行时刻,所述多个定时任务为财务管理系统发出的多个任务之前,所述基于多线程的定时任务运行方法还包括:在预置的数据库表中增加数据库锁,并读取服务器的线程阈值,基于所述线程阈值创建线程,得到多个运行线程,所述数据库锁用于锁定任务的状态。7.根据权利要求1-6中任意一项所述的基于多线程的定时任务运行方法,其特征在于,在所述通过所述数据库锁更新所述目标子定时任务的状态为工作状态,并通过所述目标运行线程执行所述目标子定时任务,得到与所述目标子定时任务对应的目标任务数据之后,所述基于多线程的定时任务运行方法还包括:实时读取所述目标子定时任务的状态,得到实时目标子定时任务状态;判断所述实时目标子定时任务状态是否为断开状态;若所述实时目标子定时任务状态为所述断开状态,则基于数据库锁再次在所述多个运行线程中确定目标运行线程。8.一种基于多线程的定时任务运行装置,其特征在于,所述基于多线程的定时任务运行装置包括:获取模块,用于获取多个定时任务与执行时刻,所述多个定时任务为财务管理系统发出的多个任务;任务拆分模块,用于基于每个定时任务读取对应的业务数据量,基于每个业务数据量将对应的定时任务拆分为多个子定时任务;编号创建模块,用于基于预先设置好的数据库锁和多个预先设置好的运行线程创建多个临时子节点编号;目标线程确定模块,当目标子定时任务在所述执行时刻被触发时,用于基于所述多个临时子节点编号和所述数据库锁在多个运行线程中确定目标运行线程;任务执行模块,用于通过所述数据库锁更新所述目标子定时任务的状态为工作状态,并通过所述目标运行线程执行所述目标子定时任务,得到与所述目标子定时任务对应的目标任务数据。9.一种基于多线程的定时任务运行设备,其特征在于,所述基于多线程的定时任务运行设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述基于多线程的定时任务运行设备执行如权利要求1-7中任意一项所述的基于多线程的定时任务运行方法。10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述基于多线程的定时任务运行方法。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1