CN110688206A - 定时任务调度方法、装置、计算机设备及存储介质 - Google Patents

定时任务调度方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110688206A
CN110688206A CN201910837974.8A CN201910837974A CN110688206A CN 110688206 A CN110688206 A CN 110688206A CN 201910837974 A CN201910837974 A CN 201910837974A CN 110688206 A CN110688206 A CN 110688206A
Authority
CN
China
Prior art keywords
task
execution
abnormal
trigger
target timing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910837974.8A
Other languages
English (en)
Inventor
詹沛昌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201910837974.8A priority Critical patent/CN110688206A/zh
Publication of CN110688206A publication Critical patent/CN110688206A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种定时任务调度方法、装置、计算机设备及存储介质,所述方法包含以下步骤:响应于任务触发指令,在预定时刻执行目标定时任务;调用监听器监听执行结果异常的目标定时任务;获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。本发明通过监听目标定时任务的执行结果,及时发现执行结果异常的目标定时任务,根据需要选择手动或者自动的方式在合适的时机再次执行所述目标定时任务。

Description

定时任务调度方法、装置、计算机设备及存储介质
技术领域
本发明涉及计算机处理中的任务调度技术领域,特别涉及一种定时任务调度方法、装置、计算机设备及存储介质。
背景技术
Quartz是一个目前使用范围较广且非常实用的JAVA定时任务开源框架,它能够对定时任务提供丰富的调度和控制的功能,进而可实现对多个定时任务的高效管理。然而在实际执行过程中,Quartz缺乏对每个定时任务执行结果的监督机制。若其中一个或几个定时任务由于非代码原因(网络问题或环境问题)造成执行出错时,只能等待当前任务处理周期中的全部任务都执行完毕后,在下一个任务处理周期才能被再次执行。因此,如何对执行出错的定时任务提供及时有效地解决措施称为本领域技术人员亟待解决的技术问题。
发明内容
本发明的目的是提供一种定时任务调度方法、装置、计算机设备及存储介质,以解决现有技术中存在的上述问题。
为实现上述目的,本发明首先提供一种定时任务调度方法,包含以下步骤:
响应于任务触发指令,在预定时刻执行目标定时任务;
调用监听器监听执行结果异常的目标定时任务;
获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;
基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
根据本发明提供的定时任务调度方法,其中,所述调用监听器监听执行结果异常的目标定时任务的步骤包括:
通过监听器获取所述目标定时任务的执行日志,当所述执行日志报错时,确定报错的所述执行日志对应的目标定时任务为执行结果异常。
根据本发明提供的定时任务调度方法,其中,所述调用监听器监听执行结果异常的目标定时任务的步骤包括:
调用监听器获取所述目标定时任务的执行起始时间;
判断是否能获取所述目标定时任务的执行结束时间;
若否,判断当前时间与所述执行起始时间之间的差值是否超过预设阈值;
若是,确定所述目标定时任务为执行结果异常。
根据本发明提供的定时任务调度方法,其中,所述获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略的步骤包括:
获取所述执行结果异常的目标定时任务的任务等级;
根据所述任务等级确定所述触发方式是手动触发还是自动触发;其中,
所述手动触发是指在任务管理页面上手动点击所述目标定时任务对应的操作按钮以启动再次触发执行;
所述自动触发是指后台程序自动跳转至所述目标定时任务对应的代码段以启动再次触发执行。
根据本发明提供的定时任务调度方法,其中,所述获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略的步骤还包括:
获取所述执行结果异常的目标定时任务在运行过程中的资源消耗值;
根据所述资源消耗值确定所述触发时机是立即触发还是稍后触发。
为实现上述目的,本发明还提供一种定时任务调度装置,包括:
初次执行模块,适用于响应于任务触发指令,在预定时刻执行目标定时任务;
执行结果监听模块,适用于调用监听器监听执行结果异常的目标定时任务;
触发执行策略模块,适用于获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;
再次执行模块,适用于基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
根据本发明提供的定时任务调度装置,其中,所述执行结果监听模块包括:
日志监听子模块,适用于通过监听器获取所述目标定时任务的执行日志,当所述执行日志报错时,确定报错的所述执行日志对应的目标定时任务为执行结果异常;
时间监听子模块,适用于调用监听器获取所述目标定时任务的执行起始时间;判断是否能获取所述目标定时任务的执行结束时间;若否,判断当前时间与所述执行起始时间之间的差值是否超过预设阈值;若是,确定所述目标定时任务为执行结果异常。
根据本发明提供的定时任务调度装置,其中,所述触发执行策略模块包括:
任务等级获取单元,适用于获取所述执行结果异常的目标定时任务的任务等级;
资源消耗获取单元,适用于获取所述执行结果异常的目标定时任务在运行过程中的资源消耗值;
触发方式确定单元,适用于根据所述任务等级确定所述触发方式是手动触发还是自动触发;
触发时机确定单元,适用于根据所述资源消耗值确定所述触发时机时立即触发还是稍后触发。
为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明提供的定时任务调度方法、装置、计算机设备及存储介质,为多个定时任务的及时正确执行提供了强有力的保障。本发明通过监听目标定时任务的执行结果,及时发现执行结果异常的目标定时任务,根据需要选择手动或者自动的方式再次执行所述目标定时任务。对于手动再次执行,本发明通过任务管理页面将Quartz管理的全部定时任务逐个提取出来,用列表的方式在任务管理页面逐条显示。当需要对其中的某条定时任务再次执行时,只需点击与该定时任务对应的操作按钮即可运行该定时任务。对于自动再次执行,则在接收到执行结果异常信号后,后台程序自动跳转至所述目标定时任务对应的代码段以启动再次触发执行。本发明能够及时发现执行结果异常的定时任务,并且可以通过手动或者自动的方式在合适的时机触发该定时任务在此执行,从而完善多定时任务的管理流程,确保每个定时任务都能够顺利执行。
附图说明
图1为本发明的定时任务调度方法实施例一的流程图;
图2为本发明的定时任务调度装置实施例一的程序模块示意图;
图3为本发明的定时任务调度装置实施例一的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的定时任务调度方法、装置、计算机设备及存储介质,为多个定时任务的及时正确执行提供了强有力的保障。本发明通过监听目标定时任务的执行结果,及时发现执行结果异常的目标定时任务,根据需要选择手动或者自动的方式再次执行所述目标定时任务。对于手动再次执行,本发明通过任务管理页面将Quartz管理的全部定时任务逐个提取出来,用列表的方式在任务管理页面逐条显示。当需要对其中的某条定时任务再次执行时,只需点击与该定时任务对应的操作按钮即可运行该定时任务。对于自动在此执行,则在接收到执行结果异常信号后,后台程序自动跳转至所述目标定时任务对应的代码段以启动再次触发执行。本发明能够及时发现执行结果异常的定时任务,并且可以通过手动或者自动的方式触发该定时任务在此执行,从而完善多定时任务的管理流程,确保每个定时任务都能够顺利执行。
实施例一
请参阅图1,本实施例提出一种定时任务调度方法,具体包括以下步骤:
S1:响应于任务触发指令,在预定时刻执行目标定时任务。
本发明通过Quartz来部署任务调度项目。Quartz是由java开发的任务调度框架,用于根据触发条件在规律的时间点,触发相应目标定时任务。Quartz中包含任务、触发器和调度器三个核心概念,其中任务指的是要执行的定时任务的具体对象,触发器指的是执行任务的触发条件,调度器则统筹任务和触发器,用于在触发器规定的触发条件下执行定时任务对象。
任务触发指令通常是包含在触发器中的时间触发条件,调度器通过实时监控当前时刻是否到达事件触发条件来判断是否执行所述定时任务。例如,一个任务调度项目中包含N个任务对象,每个任务对象对应设置有相关的触发器,通过调度器将任务对象和对应的触发器相结合,以实现根据规定的触发条件执行规定的任务对象的目的。本发明中的定时任务包括各类具有时间调取需求的操作对象,例如每隔两个小时生成精华文章的RSS文件,每天凌晨统计论坛用户的积分排名,每月1号凌晨统计上个月各部门的业务数据生成月报表,等等。
针对各类定时任务,本步骤按照Quartz中设定的时间触发条件,在相应的时间节点触发目标定时任务的执行。
S2:调用监听器监听执行结果异常的目标定时任务。
定时任务的执行结果一般包括两种,分别为执行结果正常和执行结果异常,本步骤用于对执行结果异常的定时任务进行筛选。除了由于代码错误发出执行异常的情况之外,更多的异常执行结果是由于非代码问题造成的,例如网络连接不畅、无可用计算机资源等,这时就需要在合适的时机再次触发目标任务的执行。为此,本发明首先需要获取目标任务的执行结果信息。
获取目标任务的执行结果可以采用多种方式,例如通过日志描述信息获取,或者是通过目标任务的时间节点来判断。一方面,日志描述信息可以直接呈现目标任务是否执行成功,如果未执行成功,日志描述信息中可以包含错误提示。另一方面,目标任务的时间节点包含执行该目标任务的执行起始时间和执行结束时间。执行起始时间是在目标定时任务开始执行时生成,执行结束时间则是在目标任务正常执行完毕后才可以获得。因此,如果长时间未获取到执行结束时间,则可能说明目标定时任务未能正常执行,当然,也不排除存在定时任务正在执行过程中尚未结束的可能性。为此,本发明进一步为每一条定时任务设置有限制时长,该限制时长表征完成任务所需要花费的时间,通常是根据经验值设定的。若从执行起始时间起经过大于限制时长的时间仍未获取到执行结束时间,则证明该目标定时任务未能正常执行。
通过上述任一种方式获取到执行结果异常的信息后,确定与该执行结果异常信息对应的目标定时任务,以便对该目标定时任务执行进一步的处理。
S3:获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机。
本步骤响应于执行结果异常而启动,目的是保证Quartz任务调度项目中的所有定时任务能够可靠执行,对未能正常执行的目标定时任务提供补偿机制。对于确认为异常的定时任务,本发明会根据该异常定时任务对应的异常信息,制定再次触发执行该异常定时任务的触发执行策略。本发明所述的触发执行策略主要包括触发方式和触发时机两方面内容,以下分别进行描述。
(1)触发方式
本发明所述的触发方式包括手动触发和自动触发两种方式,其中所述手动触发是指在任务管理页面上手动点击所述目标定时任务对应的操作按钮以启动再次触发执行;所述自动触发是指后台程序自动跳转至所述目标定时任务对应的代码段以启动再次触发执行。
本发明是根据所述执行结果异常的目标定时任务的任务等级来确定触发方式的。本发明根据每一个定时任务的重要程度,预先设置好其对应的任务等级并保存在配置文件中,对于重要程度高的定时任务,其对应的任务等级就高,对于重要程度低的定时任务,其对应的任务等级相应地也就较低。根据需要,可以将定时任务的任务等级设置为高、中、低三级,或者是设置为高、低两级,或者是设置为非常重要、重要、一般、不重要、非常不重要五个等级,具体登记的设定根据不同任务的实际情况设定,本发明并不对此进行限制。
本发明制定触发执行策略中触发方式的原则为:任务等级高的定时任务适用自动触发,任务等级低的定时任务适用手动触发。例如将任务等级为高的定时任务对应的触发方式制定为自动触发,将任务等级为低的定时任务对应的触发方式制定为手动触发。
(2)触发时机
本发明所述的触发时机包括立即触发和稍后触发两种时机,所述立即触发就是在一旦发现有执行结果异常的目标定时任务的时刻立即执行再次触发,所述稍后触发是指在发现有执行结果异常的目标定时任务的时刻并不执行再次触发,而是在约定的后续时刻再次触发。其中,所述约定的后续时刻可以是确定时刻,例如当天的24点,也可以是不确定时刻,例如当CPU持续使用率小于10%的时刻,具体实施时可以根据需要灵活设置,本发明并不对此加以限定。
本发明是根据所述执行结果异常的目标定时任务的资源消耗值来制定触发时机的。其基本原则为,对于资源消耗值小的定时任务适用立即触发,对于资源消耗值大的定时任务适用稍后触发。
进一步,本发明可以通过预设的标准消耗值来判断一个定时任务的资源消耗值是大还是小,例如,当资源消耗值超过所述标准消耗值时,认为该资源消耗值大;当资源消耗值没有超过所述标准消耗值时,认为该资源消耗值小。
S4:基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
本发明所述再次触发执行,指的就是对所述执行结果异常的目标定时任务在所述触发时机通过所述触发方式再次触发执行。
本实施例中,例如触发执行策略中确定的触发方式为手动触发,则通过手动方式再次触发执行所述目标定时任务。
本实施例能够通过手动再次触发目标定时任务的基础是将定时任务逐个单独提取出来,并通过列表的方式展示在任务管理页面。例如,该任务管理页面中包含多条定时任务记录,每一条定时任务记录中包含类名、方法名和操作几个项目。其中类名指的是该定时任务对应的代码块中对应的类的名称,方法名指的是该类中包含的方法的名称,操作项下包含触发按钮,点击按钮相当于立即运行包含该目标任务的代码块,从而实现再次执行所述目标定时任务。
本发明将Quartz任务调度项目中包含的所有单个定时任务保存在配置文件中,包括每个任务所对应的执行函数、参数信息等。对上述定时任务进行封装后通过任务管理页面显示出来。例如,任务管理页面中包括多个项目列表,每个项目列表对应一条任务,每条任务中显示有类名、方法名、操作等项目。其中操作项目中包含可执行按钮,该按钮作为外部调用接口连接该任务对应的函数代码块。当接收到某条目标定时任务的执行结果异常指令时,可以从任务管理页面中直接点击与该目标定时任务对应的操作按钮,从而进入该目标任务对应的函数中重新运行。
当触发执行策略中确定的触发方式为自动触发时,则可以通过设置任务跳转节点的方式自动执行目标任务。例如,当接收到某目标任务的执行结果异常指令时,设置可以跳转到该目标任务的跳转节点以重新执行该目标任务。跳转策略可以根据需要灵活设置,例如当前空闲时立即执行跳转,或者固定间隔时间之后执行跳转等等。跳转任务执行完毕后依然会返回执行结果,如果执行结果仍然异常,则再次设置任务跳转接点,直至该目标任务的执行结果为正常。
进一步,本发明根据触发执行策略中确定的触发时机再次触发执行所述目标定时任务。当触发时机为立刻触发时,则会在监测到执行结果异常的目标定时任务的第一时间再次触发执行;当触发时机为稍后触发时,则会在约定的后续时刻再次触发执行。
请继续参阅图2,示出了一种定时任务调度装置,在本实施例中,任务调度装置10可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述任务调度方法。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述任务调度装置10在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:
初次执行模块11,适用于响应于任务触发指令,在预定时刻执行目标定时任务;
执行结果监听模块12,适用于调用监听器监听执行结果异常的目标定时任务;
触发执行策略模块13,适用于获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;
再次执行模块14,适用于基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
根据本发明提供的定时任务调度装置,其中,所述执行结果监听模块12包括:
日志监听子模块121,适用于通过监听器获取所述目标定时任务的执行日志,当所述执行日志报错时,确定报错的所述执行日志对应的目标定时任务为执行结果异常;
时间监听子模块122,适用于调用监听器获取所述目标定时任务的执行起始时间;判断是否能获取所述目标定时任务的执行结束时间;若否,判断当前时间与所述执行起始时间之间的差值是否超过预设阈值;若是,确定所述目标定时任务为执行结果异常。
根据本发明提供的定时任务调度装置,其中,所述触发执行策略模块13包括:
任务等级获取单元131,适用于获取所述执行结果异常的目标定时任务的任务等级;
资源消耗获取单元132,适用于获取所述执行结果异常的目标定时任务在运行过程中的资源消耗值;
触发方式确定单元133,适用于根据所述任务等级确定所述触发方式是手动触发还是自动触发;
触发时机确定单元134,适用于根据所述资源消耗值确定所述触发时机时立即触发还是稍后触发。
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图3所示。需要指出的是,图3仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例一的任务调度装置10的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行任务调度装置10,以实现实施例一的任务调度方法。
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储任务调度装置10,被处理器执行时实现实施例一的任务调度方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
流程图中或在此以其它方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
本技术领域的普通技术人员可以理解,实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种定时任务调度方法,其特征在于,包含以下步骤:
响应于任务触发指令,在预定时刻执行目标定时任务;
调用监听器监听执行结果异常的目标定时任务;
获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;
基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
2.根据权利要求1所述的定时任务调度方法,其特征在于,所述调用监听器监听执行结果异常的目标定时任务的步骤包括:
通过监听器获取所述目标定时任务的执行日志,当所述执行日志报错时,确定报错的所述执行日志对应的目标定时任务为执行结果异常。
3.根据权利要求1所述的定时任务调度方法,其特征在于,所述调用监听器监听执行结果异常的目标定时任务的步骤包括:
调用监听器获取所述目标定时任务的执行起始时间;
判断是否能获取所述目标定时任务的执行结束时间;
若否,判断当前时间与所述执行起始时间之间的差值是否超过预设阈值;
若是,确定所述目标定时任务为执行结果异常。
4.根据权利要求1所述的定时任务调度方法,其特征在于,所述获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略的步骤包括:
获取所述执行结果异常的目标定时任务的任务等级;
根据所述任务等级确定所述触发方式是手动触发还是自动触发;其中,
所述手动触发是指在任务管理页面上手动点击所述目标定时任务对应的操作按钮以启动再次触发执行;
所述自动触发是指后台程序自动跳转至所述目标定时任务对应的代码段以启动再次触发执行。
5.根据权利要求4所述的定时任务调度方法,其特征在于,所述获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略的步骤还包括:
获取所述执行结果异常的目标定时任务在运行过程中的资源消耗值;
根据所述资源消耗值确定所述触发时机是立即触发还是稍后触发。
6.一种定时任务调度装置,其特征在于,包括:
初次执行模块,适用于响应于任务触发指令,在预定时刻执行目标定时任务;
执行结果监听模块,适用于调用监听器监听执行结果异常的目标定时任务;
触发执行策略模块,适用于获取与所述执行结果异常的目标定时任务相关联的异常任务信息,基于所述异常任务信息,确定再次触发执行所述执行结果异常的目标定时任务的触发执行策略,其中所述触发执行策略包括触发方式和触发时机;
再次执行模块,适用于基于所述触发执行策略,对所述执行结果异常的目标定时任务再次触发执行。
7.根据权利要求6所述的定时任务调度装置,其特征在于,所述执行结果监听模块包括:
日志监听子模块,适用于通过监听器获取所述目标定时任务的执行日志,当所述执行日志报错时,确定报错的所述执行日志对应的目标定时任务为执行结果异常;
时间监听子模块,适用于调用监听器获取所述目标定时任务的执行起始时间;判断是否能获取所述目标定时任务的执行结束时间;若否,判断当前时间与所述执行起始时间之间的差值是否超过预设阈值;若是,确定所述目标定时任务为执行结果异常。
8.根据权利要求6所述的定时任务调度装置,其特征在于,所述触发执行策略模块包括:
任务等级获取单元,适用于获取所述执行结果异常的目标定时任务的任务等级;
资源消耗获取单元,适用于获取所述执行结果异常的目标定时任务在运行过程中的资源消耗值;
触发方式确定单元,适用于根据所述任务等级确定所述触发方式是手动触发还是自动触发;
触发时机确定单元,适用于根据所述资源消耗值确定所述触发时机时立即触发还是稍后触发。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
CN201910837974.8A 2019-09-05 2019-09-05 定时任务调度方法、装置、计算机设备及存储介质 Pending CN110688206A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910837974.8A CN110688206A (zh) 2019-09-05 2019-09-05 定时任务调度方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910837974.8A CN110688206A (zh) 2019-09-05 2019-09-05 定时任务调度方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN110688206A true CN110688206A (zh) 2020-01-14

Family

ID=69107850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910837974.8A Pending CN110688206A (zh) 2019-09-05 2019-09-05 定时任务调度方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN110688206A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113742044A (zh) * 2021-09-09 2021-12-03 平安科技(深圳)有限公司 定时任务管理方法、装置、设备及存储介质
CN116405509A (zh) * 2023-06-09 2023-07-07 深圳前海环融联易信息科技服务有限公司 分布式监听方法及其计算机设备、存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104166590A (zh) * 2013-05-20 2014-11-26 阿里巴巴集团控股有限公司 一种实现任务调度的方法及系统
CN105468500A (zh) * 2015-11-16 2016-04-06 中国建设银行股份有限公司 定时任务监控方法和装置
CN107957903A (zh) * 2017-11-13 2018-04-24 中国平安财产保险股份有限公司 异步任务调度方法、服务器及存储介质
CN108762910A (zh) * 2018-06-06 2018-11-06 亚信科技(中国)有限公司 一种分布式任务调度方法及系统
CN109002353A (zh) * 2018-08-16 2018-12-14 北京中科梧桐网络科技有限公司 一种java统一任务中心调度方法
CN109542591A (zh) * 2018-10-17 2019-03-29 深圳壹账通智能科技有限公司 工作任务补偿处理方法、装置、计算机设备及存储介质
CN109725993A (zh) * 2018-06-01 2019-05-07 中国平安人寿保险股份有限公司 任务执行方法、装置、设备及计算机可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104166590A (zh) * 2013-05-20 2014-11-26 阿里巴巴集团控股有限公司 一种实现任务调度的方法及系统
CN105468500A (zh) * 2015-11-16 2016-04-06 中国建设银行股份有限公司 定时任务监控方法和装置
CN107957903A (zh) * 2017-11-13 2018-04-24 中国平安财产保险股份有限公司 异步任务调度方法、服务器及存储介质
CN109725993A (zh) * 2018-06-01 2019-05-07 中国平安人寿保险股份有限公司 任务执行方法、装置、设备及计算机可读存储介质
CN108762910A (zh) * 2018-06-06 2018-11-06 亚信科技(中国)有限公司 一种分布式任务调度方法及系统
CN109002353A (zh) * 2018-08-16 2018-12-14 北京中科梧桐网络科技有限公司 一种java统一任务中心调度方法
CN109542591A (zh) * 2018-10-17 2019-03-29 深圳壹账通智能科技有限公司 工作任务补偿处理方法、装置、计算机设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113742044A (zh) * 2021-09-09 2021-12-03 平安科技(深圳)有限公司 定时任务管理方法、装置、设备及存储介质
CN116405509A (zh) * 2023-06-09 2023-07-07 深圳前海环融联易信息科技服务有限公司 分布式监听方法及其计算机设备、存储介质
CN116405509B (zh) * 2023-06-09 2023-09-01 深圳前海环融联易信息科技服务有限公司 分布式监听方法及其计算机设备、存储介质

Similar Documents

Publication Publication Date Title
CN109726072B (zh) WebLogic服务器的监控告警方法、装置、系统及计算机存储介质
US6658465B1 (en) Method and apparatus for monitoring and controlling programs in a network
EP0754321B1 (en) Method and appartus for monitoring and controlling programs in a network
US8365196B2 (en) Method and device for log events processing
CN107844343B (zh) 一种复杂服务端应用系统的升级系统及方法
CN110119306B (zh) 作业自动调度均衡方法、装置、设备及存储介质
CN111324423B (zh) 容器内进程的监控方法、装置、存储介质和计算机设备
CN112416581B (zh) 定时任务的分布式调用系统
CN112148505A (zh) 数据跑批系统、方法、电子设备和存储介质
CN110895488B (zh) 任务调度方法及装置
CN110688206A (zh) 定时任务调度方法、装置、计算机设备及存储介质
CN107577527B (zh) 任务生成、调度方法及装置
CN112306732A (zh) 一种服务器中的自动纠错控制方法、装置、设备及介质
CN110895486A (zh) 分布式任务调度系统
CN110716943A (zh) 缺失数据补录方法、装置、计算机设备及存储介质
CN113360282A (zh) 一种任务管理方法、装置、电子设备及存储介质
CN111416857A (zh) 客户端崩溃处理方法、装置、系统、设备和存储介质
CN113051005B (zh) 一种加载方法及装置
CN109766235A (zh) 基于软件监控的配置文件检测方法、系统、设备及介质
CN114036032A (zh) 一种实时程序的监控方法及装置
US10102052B2 (en) Dumping resources
CN110837399A (zh) 一种管理流式计算应用程序的方法、装置及计算设备
CN112558982B (zh) 代码检测方法、装置及计算机设备
CN110674214A (zh) 大数据同步方法、装置、计算机设备及存储介质
CN113127221B (zh) 一种限制消息消费速率的方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination