CN110532081A - 一种定时任务处理方法及装置 - Google Patents
一种定时任务处理方法及装置 Download PDFInfo
- Publication number
- CN110532081A CN110532081A CN201910824143.7A CN201910824143A CN110532081A CN 110532081 A CN110532081 A CN 110532081A CN 201910824143 A CN201910824143 A CN 201910824143A CN 110532081 A CN110532081 A CN 110532081A
- Authority
- CN
- China
- Prior art keywords
- timed task
- task
- basic
- demand
- time
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供一种定时任务处理方法及装置,其中所述定时任务处理方法包括:获取至少一个时间段定时任务需求;根据所述时间段定时任务需求确定基础任务时间间隔;根据所述基础任务时间间隔配置基础定时任务;根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。将应用的时间段定时任务缩减为一个基础定时任务,减少了大量的配置参数时间,同时减少了任务调度系统中的任务数,节省了任务调度系统的资源,并且配置简单,便于后期维护拓展,节省了人力资源。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种定时任务处理方法及装置、计算设备和计算机可读存储介质。
背景技术
随着计算机技术的发展,定时任务被越来越多地应用到多种场景中,开发者先对定时任务的内容以及运行时间进行预先设定。然后系统在运行时间到达后根据定时任务的内容自动地执行相应的操作。
在配置一个定时任务时,需要配置很多参数,如任务名称、任务类型、任务时间配置、任务调度系统地址等,有多少定时任务就配置多少次,对于同一个应用中的定时任务,相同的信息被重复配置很多次,占用任务调度系统的大量资源,任务繁重,验证测试运行耗费时间,后期维护拓展困难。
发明内容
有鉴于此,本申请实施例中提供了一种定时任务处理方法及装置、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本申请实施例的第一方面,提供了一种定时任务处理方法,包括:
获取至少一个时间段定时任务需求;
根据所述时间段定时任务需求确定基础任务时间间隔;
根据所述基础任务时间间隔配置基础定时任务;
根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
可选的,时间段定时任务需求包括触发时间间隔;
根据所述时间段定时任务需求确定基础任务时间间隔,包括:
获取至少一个时间段定时任务需求中的触发时间间隔;
根据至少一个所述触发时间间隔,确定基础任务时间间隔。
可选的,根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务,包括:
将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,其中,n为正整数;
记录所述基础定时任务的触发次数;
根据每个时间段定时任务需求,当所述基础定时任务的触发次数为时间段定时任务需求对应n的整数倍的情况下,触发所述时间段定时任务需求对应的时间段定时任务。
可选的,所述定时任务处理方法还包括:
获取至少一个时间点定时任务需求,其中所述时间点定时任务需求包括触发定时任务的时间点;
根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务。
可选的,根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务,包括:
根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间;
获取基础定时任务的触发时间点;
根据每个时间点定时任务需求,当所述基础定时任务的触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
可选的,根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间,包括:
将所述时间点定时任务需求中触发定时任务的时间点确定为所述触发时间区间的最小值;
将所述时间点定时任务需求中触发定时任务的时间点与所述基础定时任务的基础任务时间间隔的和确定为所述触发时间区间的最大值。
可选的,获取基础定时任务的触发时间点,包括:
获取基础定时任务的初始触发时间点;
记录所述基础定时任务的触发次数;
根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数,获取基础定时任务的触发时间点。
根据本申请实施例的第二方面,提供了一种定时任务处理装置,包括:
第一获取模块,被配置为获取至少一个时间段定时任务需求;
确定模块,被配置为根据所述时间段定时任务需求确定基础任务时间间隔;
配置模块,被配置为根据所述基础任务时间间隔配置基础定时任务;
第一触发模块,被配置为根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
可选的,所述确定模块,进一步被配置为获取至少一个时间段定时任务需求中的触发时间间隔;根据至少一个所述触发时间间隔,确定基础任务时间间隔。
可选的,所述第一触发模块,包括:
第一转换子模块,被配置为将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,其中,n为正整数;
第一记录子模块,被配置为记录所述基础定时任务的触发次数;
第一触发子模块,被配置为根据每个时间段定时任务需求,当所述基础定时任务的触发次数为时间段定时任务需求对应n的整数倍的情况下,触发所述时间段定时任务需求对应的时间段定时任务。
可选的,所述定时任务处理装置,还包括:
第二获取模块,被配置为获取至少一个时间点定时任务需求,其中所述时间点定时任务需求包括触发定时任务的时间点;
第二触发模块,被配置为根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务。
可选的,所述第二触发模块,包括:
确定子模块,被配置为根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间;
获取子模块,被配置为获取基础定时任务的触发时间点;
第二触发子模块,被配置为根据每个时间点定时任务需求,当所述基础定时任务的触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
可选的,所述确定子模块,进一步被配置为将所述时间点定时任务需求中触发定时任务的时间点确定为所述触发时间区间的最小值;将所述时间点定时任务需求中触发定时任务的时间点与所述基础定时任务的基础任务时间间隔的和确定为所述触发时间区间的最大值。
可选的,所述获取子模块,进一步被配置为获取基础定时任务的初始触发时间点;记录所述基础定时任务的触发次数;根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数,获取基础定时任务的触发时间点。
根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述定时任务处理方法的步骤。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述定时任务处理方法的步骤。
本申请实施例中,通过获取至少一个时间段定时任务需求;根据所述时间段定时任务需求确定基础任务时间间隔;根据所述基础任务时间间隔配置基础定时任务;根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。将应用的时间段定时任务缩减为一个基础定时任务,减少了大量的配置参数时间,同时减少了任务调度系统中的任务数,节省了任务调度系统的资源,并且配置简单,便于后期维护拓展,节省了人力资源。
附图说明
图1是本申请一实施例提供的计算设备的结构框图;
图2是本申请一实施例提供的定时任务处理方法的流程图;
图3是本申请一实施例提供的触发时间段定时任务方法的流程图;
图4是本申请另一实施例提供的定时任务处理方法的流程图;
图5是本申请另一实施例提供的触发时间点定时任务方法的流程图;
图6是本申请实施例提供的定时任务处理装置的结构示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本发明一个或多个实施例涉及的名词术语进行解释。
定时任务:软件系统中,需要定时运行的任务;常见任务有两类:1、每隔一段固定时间执行一次2、本地时间到达某个钟点触发一次,一个应用中常常需要配置多个定时任务。
任务调度系统:是个独立应用,可以触发其他应用配置在其上面的定时任务,是一个域下所有应用的任务调度中心。
基础定时任务:一个应用配置在任务调度系统里的普通定时任务,基础定时任务被调度时,通过算法可以触发其他多个本地定时任务,从而做到多个业务定时任务复用一个基础定时任务的效果。
基础任务时间间隔:基础定时任务是每隔一个基础时间间隔触发一次的普通定时任务。
在本申请中,提供了一种定时任务处理方法及装置、计算设备和计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本申请一实施例的计算设备100的结构框图。该计算设备100的部件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。
计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备100还可以是移动式或静止式的服务器。
其中,处理器120可以执行图2所示定时任务处理方法中的步骤。图2示出了根据本申请一实施例的定时任务处理方法的流程图,包括步骤202至步骤208。
步骤202:获取至少一个时间段定时任务需求。
在软件系统中,通常会有很多个应用,在每个应用中,往往会需要大量的定时运行应用的需求,如每隔1个小时同步应用的数据,每隔5分钟收取一次邮件,每隔12个小时更换一次密钥等等,其中每隔一段固定时间执行一次的定时任务被称为时间段定时任务。
使用者需要在任务调度系统中为这些时间段定时任务需求配置定时任务,因此需要获取时间段定时任务需求。
在本申请提供的实施例中,以在任务调度系统中为A应用配置时间段定时任务为例。A应用的时间段定时任务需求为:a、需要每隔2个小时同步一次应用的数据库数据;b、需要每隔3个小时发一次待办任务提醒。因此获得A应用的时间段定时任务需求a和b。
步骤204:根据所述时间段定时任务需求确定基础任务时间间隔。
根据获取的时间段定时任务需求,确定与每个时间段定时任务需求相关的基础任务时间间隔。
可选的,时间段定时任务需求包括触发时间间隔,步骤204可以通过下述步骤S2041~S2042实现。
时间段定时任务需求中每隔固定时间间隔执行一次任务,其中固定的时间间隔即为触发时间间隔,如每隔1个小时同步应用的数据中的触发时间间隔为1小时,每隔5分钟收取一次邮件中的触发时间间隔为5分钟,每隔12个小时更换一次密钥中的触发时间间隔为12小时。
S2041、获取至少一个时间段定时任务需求中的触发时间间隔。
在本申请提供的实施例中,获取的时间段定时任务需求为:a、需要每隔2个小时同步一次应用的数据库数据;b、需要每隔3个小时发一次待办任务提醒。因此时间段定时任务a的触发时间间隔为2小时,时间段定时任务b的触发时间间隔为3小时。
S2042、根据至少一个所述触发时间间隔,确定基础任务时间间隔。
根据S2042中获取的触发时间间隔,确定基础任务时间间隔。确定基础任务时间间隔的方法可以采用计算获取的触发时间间隔的最大公约数方法。
在本申请提供的实施例中,时间段定时任务a的触发时间间隔为2小时,时间段定时任务b的触发时间间隔为3小时,时间段定时任务a和时间段定时任务b的触发时间间隔的最大公约数为1小时,因此,可以确定基础任务时间间隔为1小时。
步骤206:根据所述基础任务时间间隔配置基础定时任务。
在任务调度系统中根据基础任务时间间隔配置基础定时任务。
在本申请提供的实施例中,在任务调度系统中,基础任务时间间隔为1小时,根据基础任务时间间隔配置基础定时任务z,配置内容为每隔1个小时触发一次基础定时任务。
步骤208:根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
在任务调度系统中,根据基础定时任务和时间段定时任务需求,为时间段定时任务配置触发条件,当时间段定时任务满足触发条件的情况下,触发执行时间段定时任务。
可选的,如图3所示,所述步骤208可以通过下述步骤302~306实现。
步骤302:将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,其中,n为正整数。
将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,即每个时间段定时任务需求都可以用n个基础定时任务表示。
在本申请提供的实施例中,基础任务时间间隔为1小时,时间段定时任务a的触发时间间隔为2小时,因此时间段定时任务a的触发时间间隔可以转换为2个基础任务时间间隔,时间段定时任务b的触发时间间隔为3小时,因此时间段定时任务b的触发时间间隔可以转换为3个基础任务时间间隔。
步骤304:记录所述基础定时任务的触发次数。
在任务调度系统中为应用设置计数器,所述计数器用以记录基础定时任务的触发次数。
在本申请提供的实施例中,设置计数器的计数值为m,用以记录基础定时任务z的触发次数,如基础定时任务z触发了3次则m=3,基础定时任务z触发了8次,则m=8。
步骤306:根据每个时间段定时任务需求,当所述基础定时任务的触发次数为时间段定时任务需求对应n的整数倍的情况下,触发所述时间段定时任务需求对应的时间段定时任务。
对于每个时间段定时任务需求,当基础定时任务的触发次数为时间段定时任务需求对应的n个基础任务时间间隔的整数倍的情况下,触发时间段定时任务。
在本申请提供的实施例中,对于时间段定时任务需求a,触发时间间隔为2个基础任务时间间隔,因此当基础定时任务触发次数为2的整数倍的情况下,触发时间段定时任务a;对于时间段定时任务需求b,触发时间间隔为3个基础任务时间间隔,因此当基础定时任务触发次数为3的整数倍的情况下,触发时间段定时任务b。
本申请提供的定时任务处理方法,通过时间段定时任务的触发时间间隔确定基础任务时间间隔,通过基础任务时间间隔配置基础定时任务,根据基础定时任务触发每个时间段定时任务。定时任务数的减少节省了任务调度系统的大量资源,同时也极大地减少了配置任务的参数,进而节省了配置时间,并且基础定时任务的配置简单,便于后期维护和拓展,节省了人力资源。
图4示出了本申请一实施例的定时任务处理方法,该定时任务处理方法以对处理时间段定时任务和时间点定时任务为例进行描述,包括步骤402至步骤412。
步骤402:获取至少一个时间段定时任务需求。
步骤404:根据所述时间段定时任务需求确定基础任务时间间隔。
步骤406:根据所述基础任务时间间隔配置基础定时任务。
步骤408:根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
步骤402~408与上述步骤202~208的方法一致,关于步骤402~408的具体解释,参见前述实施例中步骤202~208的详细内容,在此就不再赘述。
步骤410:获取至少一个时间点定时任务需求,其中所述时间点定时任务需求包括触发定时任务的时间点。
在实际应用过程中,除了时间段定时任务还会有时间点定时任务,时间点定时任务即当时间到达每个具体的时间点时触发的定时任务。如每天11:40备份数据,每天18:00提醒待办事项等等,获取时间点定时任务需求。
在本申请提供的实施例中,时间点定时任务需求c为每天11:40备份数据,获取所述时间点定时任务需求。
步骤412:根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务。
可选的,参见图5,步骤412可以通过下述步骤502至步骤506实现。
步骤502:根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间。
根据已经配置好的基础定时任务中的基础任务时间间隔和时间点定时任务需求中的触发时间点,确定一个触发时间区间。
可选的,将所述时间点定时任务需求中触发定时任务的时间点确定为所述触发时间区间的最小值,将所述时间点定时任务需求中触发定时任务的时间点与所述基础定时任务的基础任务时间间隔的和确定为所述触发时间区间的最大值。
在本申请提供的实施例中,基础定时任务中的基础任务时间间隔为30分钟,时间点定时任务c的触发时间点为11:40,时间点定时任务c的触发时间点与基础任务时间间隔的和为12:10。因此将触发时间点11:40作为触发时间区间的最小值,将12:10作为触发时间区间的最大值。
步骤504:获取基础定时任务的触发时间点。
进一步的,步骤504通过下述步骤S5041~S5043实现。
S5041、获取基础定时任务的初始触发时间点。
基础定时任务的初始触发时间为基础定时任务准备开始的时间。
在本申请提供的实施例中,基础定时任务从8:00开始准备执行,基础任务时间间隔为30分钟,即基础定时任务从8:00开始每隔30分钟执行一次。
S5042、记录所述基础定时任务的触发次数。
S5043、根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数,获取基础定时任务的触发时间点。
根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数即可以获得基础定时任务每次触发时的触发时间点。
在本申请提供的实施例中,初始触发时间点为8:00,基础任务时间间隔为30分钟,当基础定时任务的触发次数为1时,触发时间为8:30,当基础定时任务的触发次数为3次时,触发时间为9:30,当基础定时任务的触发次数为16次时,触发时间为16:00。
步骤506:根据每个时间点定时任务需求,当所述基础定时任务的触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
根据每个时间点定时任务需求,计算每次基础定时任务的触发时间点,在触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
在本申请提供的实施例中,初始触发时间点为8:00,基础任务时间间隔为30分钟,触发时间区间为11:40~12:10,基础定时任务触发8次时,触发时间点为12:00,此时触发时间点在触发时间区间内,进而触发时间点定时任务。
本申请提供的定时任务处理方法,通过时间段定时任务的触发时间间隔确定基础任务时间间隔,通过基础任务时间间隔配置基础定时任务,根据基础定时任务触发每个时间段定时任务,对于应用中的时间点定时任务,根据时间点定时任务的触发时间点和基础任务时间间隔确定触发时间区间,和基础定时任务的触发时间结合进而触发时间点定时任务。定时任务数的减少节省了任务调度系统的大量资源,同时也极大地减少了配置任务的参数,进而节省了配置时间,并且基础定时任务的配置简单,便于后期维护和拓展,节省了人力资源。
与上述方法实施例相对应,本申请还提供了定时任务处理装置实施例,图6示出了本申请一个实施例的定时任务处理装置的结构示意图。如图6所示,该装置包括:
第一获取模块602,被配置为获取至少一个时间段定时任务需求;
确定模块604,被配置为根据所述时间段定时任务需求确定基础任务时间间隔;
配置模块606,被配置为根据所述基础任务时间间隔配置基础定时任务;
第一触发模块608,被配置为根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
可选的,所述确定模块602,进一步被配置为获取至少一个时间段定时任务需求中的触发时间间隔;根据至少一个所述触发时间间隔,确定基础任务时间间隔。
可选的,所述第一触发模块608,包括:
第一转换子模块,被配置为将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,其中,n为正整数;
第一记录子模块,被配置为记录所述基础定时任务的触发次数;
第一触发子模块,被配置为根据每个时间段定时任务需求,当所述基础定时任务的触发次数为时间段定时任务需求对应n的整数倍的情况下,触发所述时间段定时任务需求对应的时间段定时任务。
可选的,所述定时任务处理装置,还包括:
第二获取模块610,被配置为获取至少一个时间点定时任务需求,其中所述时间点定时任务需求包括触发定时任务的时间点;
第二触发模块612,被配置为根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务。
可选的,所述第二触发模块612,包括:
确定子模块,被配置为根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间;
获取子模块,被配置为获取基础定时任务的触发时间点;
第二触发子模块,被配置为根据每个时间点定时任务需求,当所述基础定时任务的触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
可选的,所述确定子模块,进一步被配置为将所述时间点定时任务需求中触发定时任务的时间点确定为所述触发时间区间的最小值;将所述时间点定时任务需求中触发定时任务的时间点与所述基础定时任务的基础任务时间间隔的和确定为所述触发时间区间的最大值。
可选的,所述获取子模块,进一步被配置为获取基础定时任务的初始触发时间点;记录所述基础定时任务的触发次数;根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数,获取基础定时任务的触发时间点。
本申请提供的定时任务处理装置,通过时间段定时任务的触发时间间隔确定基础任务时间间隔,通过基础任务时间间隔配置基础定时任务,根据基础定时任务触发每个时间段定时任务,对于应用中的时间点定时任务,根据时间点定时任务的触发时间点和基础任务时间间隔确定触发时间区间,和基础定时任务的触发时间结合进而触发时间点定时任务。定时任务数的减少节省了任务调度系统的大量资源,同时也极大地减少了配置任务的参数,进而节省了配置时间,并且基础定时任务的配置简单,便于后期维护和拓展,节省了人力资源。
本申请一实施例中还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的定时任务处理方法的步骤。
本申请一实施例中还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述定时任务处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的定时任务处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述定时任务处理方法的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。
Claims (10)
1.一种定时任务处理方法,其特征在于,包括:
获取至少一个时间段定时任务需求;
根据所述时间段定时任务需求确定基础任务时间间隔;
根据所述基础任务时间间隔配置基础定时任务;
根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
2.如权利要求1所述的定时任务处理方法,其特征在于,所述时间段定时任务需求包括触发时间间隔;
根据所述时间段定时任务需求确定基础任务时间间隔,包括:
获取至少一个时间段定时任务需求中的触发时间间隔;
根据至少一个所述触发时间间隔,确定基础任务时间间隔。
3.如权利要求1所述的定时任务处理方法,其特征在于,根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务,包括:
将每个时间段定时任务需求的触发时间间隔转换为n个基础任务时间间隔,其中,n为正整数;
记录所述基础定时任务的触发次数;
根据每个时间段定时任务需求,当所述基础定时任务的触发次数为时间段定时任务需求对应n的整数倍的情况下,触发所述时间段定时任务需求对应的时间段定时任务。
4.如权利要求1所述的定时任务处理方法,其特征在于,还包括:
获取至少一个时间点定时任务需求,其中所述时间点定时任务需求包括触发定时任务的时间点;
根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务。
5.如权利要求4所述的定时任务处理方法,其特征在于,根据所述基础定时任务和所述时间点定时任务需求,触发时间点定时任务,包括:
根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间;
获取基础定时任务的触发时间点;
根据每个时间点定时任务需求,当所述基础定时任务的触发时间点在所述触发时间区间内的情况下,触发时间点定时任务需求对应的时间点定时任务。
6.如权利要求5所述的定时任务处理方法,其特征在于,根据所述基础定时任务确定所述时间点定时任务需求的触发时间区间,包括:
将所述时间点定时任务需求中触发定时任务的时间点确定为所述触发时间区间的最小值;
将所述时间点定时任务需求中触发定时任务的时间点与所述基础定时任务的基础任务时间间隔的和确定为所述触发时间区间的最大值。
7.如权利要求5所述的定时任务处理方法,其特征在于,获取基础定时任务的触发时间点,包括:
获取基础定时任务的初始触发时间点;
记录所述基础定时任务的触发次数;
根据所述初始触发时间点、所述基础定时任务的基础任务时间间隔和所述基础定时任务的触发次数,获取基础定时任务的触发时间点。
8.一种定时任务处理装置,其特征在于,包括:
第一获取模块,被配置为获取至少一个时间段定时任务需求;
确定模块,被配置为根据所述时间段定时任务需求确定基础任务时间间隔;
配置模块,被配置为根据所述基础任务时间间隔配置基础定时任务;
第一触发模块,被配置为根据所述基础定时任务和所述时间段定时任务需求,触发时间段定时任务。
9.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910824143.7A CN110532081B (zh) | 2019-09-02 | 2019-09-02 | 一种定时任务处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910824143.7A CN110532081B (zh) | 2019-09-02 | 2019-09-02 | 一种定时任务处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110532081A true CN110532081A (zh) | 2019-12-03 |
CN110532081B CN110532081B (zh) | 2022-03-22 |
Family
ID=68666265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910824143.7A Active CN110532081B (zh) | 2019-09-02 | 2019-09-02 | 一种定时任务处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110532081B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506624A (zh) * | 2020-10-29 | 2021-03-16 | 望海康信(北京)科技股份公司 | 定时任务调度系统、方法及相应计算机设备和存储介质 |
CN112817723A (zh) * | 2021-02-04 | 2021-05-18 | 歌尔股份有限公司 | 定时器调用方法、装置、设备及计算机可读存储介质 |
WO2023246314A1 (zh) * | 2022-06-21 | 2023-12-28 | 京东方科技集团股份有限公司 | 信息处理方法、信息处理系统、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320337A (zh) * | 2008-07-16 | 2008-12-10 | 北京中星微电子有限公司 | 一种定时器及其实现方法 |
CN103648224A (zh) * | 2013-12-25 | 2014-03-19 | 广州中国科学院软件应用技术研究所 | 定时任务处理方法及相关装置、系统 |
CN104834564A (zh) * | 2015-05-20 | 2015-08-12 | 百度在线网络技术(北京)有限公司 | 任务调度的方法和装置 |
CN104951361A (zh) * | 2014-03-27 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种定时任务的触发方法和装置 |
CN107894919A (zh) * | 2017-11-30 | 2018-04-10 | 中国平安财产保险股份有限公司 | 定时任务触发方法、装置、设备及可读存储介质 |
CN109725993A (zh) * | 2018-06-01 | 2019-05-07 | 中国平安人寿保险股份有限公司 | 任务执行方法、装置、设备及计算机可读存储介质 |
CN110032438A (zh) * | 2019-04-24 | 2019-07-19 | 北京高途云集教育科技有限公司 | 延时任务执行方法、装置及电子设备 |
-
2019
- 2019-09-02 CN CN201910824143.7A patent/CN110532081B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101320337A (zh) * | 2008-07-16 | 2008-12-10 | 北京中星微电子有限公司 | 一种定时器及其实现方法 |
CN103648224A (zh) * | 2013-12-25 | 2014-03-19 | 广州中国科学院软件应用技术研究所 | 定时任务处理方法及相关装置、系统 |
CN104951361A (zh) * | 2014-03-27 | 2015-09-30 | 阿里巴巴集团控股有限公司 | 一种定时任务的触发方法和装置 |
CN104834564A (zh) * | 2015-05-20 | 2015-08-12 | 百度在线网络技术(北京)有限公司 | 任务调度的方法和装置 |
CN107894919A (zh) * | 2017-11-30 | 2018-04-10 | 中国平安财产保险股份有限公司 | 定时任务触发方法、装置、设备及可读存储介质 |
CN109725993A (zh) * | 2018-06-01 | 2019-05-07 | 中国平安人寿保险股份有限公司 | 任务执行方法、装置、设备及计算机可读存储介质 |
CN110032438A (zh) * | 2019-04-24 | 2019-07-19 | 北京高途云集教育科技有限公司 | 延时任务执行方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112506624A (zh) * | 2020-10-29 | 2021-03-16 | 望海康信(北京)科技股份公司 | 定时任务调度系统、方法及相应计算机设备和存储介质 |
CN112817723A (zh) * | 2021-02-04 | 2021-05-18 | 歌尔股份有限公司 | 定时器调用方法、装置、设备及计算机可读存储介质 |
WO2023246314A1 (zh) * | 2022-06-21 | 2023-12-28 | 京东方科技集团股份有限公司 | 信息处理方法、信息处理系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110532081B (zh) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11392843B2 (en) | Utilizing a machine learning model to predict a quantity of cloud resources to allocate to a customer | |
Verma et al. | Two sides of a coin: Optimizing the schedule of mapreduce jobs to minimize their makespan and improve cluster performance | |
CN110532081A (zh) | 一种定时任务处理方法及装置 | |
Wu et al. | Hybrid evolutionary scheduling for energy-efficient fog-enhanced internet of things | |
EP3454210B1 (en) | Prescriptive analytics based activation timetable stack for cloud computing resource scheduling | |
CN107231264A (zh) | 用于管理云服务器的容量的方法和装置 | |
Boloor et al. | Dynamic request allocation and scheduling for context aware applications subject to a percentile response time SLA in a distributed cloud | |
CN109753356A (zh) | 一种容器资源调度方法、装置及计算机可读存储介质 | |
CN110751358A (zh) | 一种机场地面服务人员的排班方法、电子设备及存储介质 | |
US20130268310A1 (en) | Scheduling system, method and computer-readable medium | |
US20170131978A1 (en) | Automated offline application (app) generation system and method therefor | |
da Rosa Righi et al. | Enhancing performance of IoT applications with load prediction and cloud elasticity | |
CN106055630A (zh) | 日志存储的方法及装置 | |
CN110781180B (zh) | 一种数据筛选方法和数据筛选装置 | |
CN105210039B (zh) | 终端和用于同步其应用的方法 | |
CN109815448A (zh) | 幻灯片生成方法及装置 | |
CN111782901A (zh) | 数据采集方法以及装置 | |
CN110826786A (zh) | 目的地点人口数量的预测方法、装置及存储介质 | |
Akingbesote et al. | Performance modeling of proposed guiset middleware for mobile healthcare services in e‐marketplaces | |
CN114995877B (zh) | 一种变量配置方法及装置 | |
CN115827646A (zh) | 索引配置方法、装置和电子设备 | |
CN114862098A (zh) | 资源分配方法以及装置 | |
CN114035940A (zh) | 资源分配方法以及装置 | |
Hirsch et al. | Practical criteria for scheduling CPU-bound jobs in mobile devices at the edge | |
CN110046975B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |