分布式定时任务的执行方法、装置、设备及可读存储介质制造方法及图纸

技术编号:25689664 阅读:23 留言:0更新日期:2020-09-18 21:01
本申请涉及数据处理技术领域,提供了一种分布式定时任务的执行方法、装置、计算机设备及计算机可读存储介质,包括:接收应用程序的启动指令,基于启动指令运行应用程序,并获取应用程序的运行时刻;基于预置分布式锁,根据应用程序的运行时刻获取应用程序的key值和/或任务时长范围;基于应用程序的第一预置常驻线程,获取与key值对应的补偿任务和/或与任务时长范围对应的定时任务;将补偿任务和/或定时任务插入预置队列线性表中;若确定预置队列线性表中补偿任务和/或定时任满足执行条件时,则通过预置线程池中的任务线程执行补偿任务和/或定时任务,避免了定时任务的丢失的情况,并同时执行多个定时任务,提高了执行定时任务的效率。

【技术实现步骤摘要】
分布式定时任务的执行方法、装置、设备及可读存储介质
本申请涉及数据处理
,尤其涉及一种分布式定时任务的执行方法、装置、计算机设备及计算机可读存储介质。
技术介绍
在Web应用中,多数应用都有任务调度或定时任务执行的功能。随着软件架构的发展,提出了分布式解决方案,该方案将软件功能进行垂直拆分为多个模块进行部署,各个模块有不同的功能,也细化了应用程序的功能模块,同时减轻了服务器的负担,用了分布式拆分后,就相当于把一个应用程序的多个功能分配到多台服务器上去处理了。这样一来,每一台服务器负责自己的模块业务,不会受到其他业务的影响。现如今,将定时任务的功能单独作为一个模块部署在某机器上,该机器的所有资源全部为定时任务服务,不仅提高了可靠性,还能对定时任务做更加细粒度的控制(可以随时启停该服务,或者当待执行定时任务数据量过大时对该模块单独进行集群部署)。但在分布式下执行定时任务,会存在多实例竞争数据的问题,易导致漏执行的定时任务,且通过加分布式锁来执行各个实例的定时任务,但在某一个时刻有多个任务时只能执行一个实例定时任务,所有任务串行执行,导本文档来自技高网...

【技术保护点】
1.一种分布式定时任务的执行方法,其特征在于,包括:/n接收应用程序的启动指令,基于启动指令运行所述应用程序,并获取所述应用程序的运行时刻;/n基于预置分布式锁,根据所述应用程序的运行时刻获取所述应用程序的key值和/或任务时长范围;/n基于所述应用程序的第一预置常驻线程,获取与所述应用程序的key值对应的补偿任务和/或与所述应用程序的任务时长范围对应的定时任务;/n将所述补偿任务和/或所述定时任务插入预置队列线性表中;/n若确定所述预置队列线性表中所述补偿任务和/或所述定时任满足执行条件时,则通过预置线程池中的任务线程执行所述补偿任务和/或所述定时任务。/n

【技术特征摘要】
1.一种分布式定时任务的执行方法,其特征在于,包括:
接收应用程序的启动指令,基于启动指令运行所述应用程序,并获取所述应用程序的运行时刻;
基于预置分布式锁,根据所述应用程序的运行时刻获取所述应用程序的key值和/或任务时长范围;
基于所述应用程序的第一预置常驻线程,获取与所述应用程序的key值对应的补偿任务和/或与所述应用程序的任务时长范围对应的定时任务;
将所述补偿任务和/或所述定时任务插入预置队列线性表中;
若确定所述预置队列线性表中所述补偿任务和/或所述定时任满足执行条件时,则通过预置线程池中的任务线程执行所述补偿任务和/或所述定时任务。


2.如权利要求1所述的分布式定时任务的执行方法,其特征在于,所述获取所述应用程序的运行时刻,包括:获取到多个所述应用程序的运行时刻。


3.如权利要求2所述的分布式定时任务的执行方法,其特征在于,所述预设分布式锁包括预置补偿查询分布式锁和预置轮询分布式锁;所述基于预置分布式锁,根据所述应用程序的运行时刻获取所述应用程序的key值和/或任务时长范围,包括:
根据各个所述应用程序的运行时刻,通过所述预置补偿查询分布式锁确定各个所述应用程序的key值;
在所述预置补偿查询分布式锁对各个所述应用程序进行加锁时,确定所述预置补偿查询分布式锁加锁的应用程序以及所述加锁的应用程序对应的key值;和/或
在预置轮询分布式锁对各个所述应用程序进行加锁时,确定所述预置轮询分布式锁加锁的应用程序以及所述应用程序的key值,以及根据所述应用程序的key值和预置时长确定所述应用程序的任务时长范围。


4.如权利要求2所述的分布式定时任务的执行方法,其特征在于,所述基于所述应用程序的第一预置常驻线程,获取与所述应用程序的key值对应的补偿任务和/或与所述应用程序的任务时长范围对应的定时任务,包括:
基于所述应用程序的第一预置常驻线程和预置定时任务表,获取所述预置定时任务表中与所述应用程序的key值对应的补偿任务;和/或
基于所述应用程序的第一预置常驻线程和预置定时任务表,获取所述预置定时任务表中与所述应用程序的任务时长范围对应的定时任务。


5.如权利要求1所述的分布式定时任务的执行方法,其特征在于,所述若确定所述预置队列线性表中所述补偿任务和/或所述定时任满足执行条件时,则通过预置线程池中的任务线程执行所述补偿任务和/或所述定时任务,包括:
基于所述应用程序的第二常驻线程,确定预置队列线性表中所述补偿任务和/或所述定时任务是否满足执行条件;
若所述...

【专利技术属性】
技术研发人员:唐飞
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:广东;44

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

1