CN107861801A - 一种定时调度方法及系统 - Google Patents

一种定时调度方法及系统 Download PDF

Info

Publication number
CN107861801A
CN107861801A CN201710985558.3A CN201710985558A CN107861801A CN 107861801 A CN107861801 A CN 107861801A CN 201710985558 A CN201710985558 A CN 201710985558A CN 107861801 A CN107861801 A CN 107861801A
Authority
CN
China
Prior art keywords
time
task
tasks
timer
scheduled
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
CN201710985558.3A
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.)
BEIJING GEO POLYMERIZATION TECHNOLOGY Co Ltd
Original Assignee
BEIJING GEO POLYMERIZATION TECHNOLOGY 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 BEIJING GEO POLYMERIZATION TECHNOLOGY Co Ltd filed Critical BEIJING GEO POLYMERIZATION TECHNOLOGY Co Ltd
Priority to CN201710985558.3A priority Critical patent/CN107861801A/zh
Publication of CN107861801A publication Critical patent/CN107861801A/zh
Pending legal-status Critical Current

Links

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

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

公开一种定时调度方法,其能够消除了调度延时,能够调度大量的定时任务,可扩展性好。该方法包括:(1)获取所有的定时任务集合;(2)采用基于滑动窗口的时间计算器,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;(3)采用一个时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。还有定时调度系统。

Description

一种定时调度方法及系统
技术领域
本发明涉及大数据处理的技术领域,尤其涉及一种定时调度方法,以及定时调度系统。
背景技术
crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语chronos(χρνο),原意是时间。crontab储存的指令被守护进程激活,crontab常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。
crontab文件包含送交cron守护进程的一系列作业和指令。每个用户可以拥有自己的crontab文件;同时,操作系统保存一个针对整个系统的crontab文件,该文件通常存放于/etc或者/etc之下的子目录中,而这个文件只能由系统管理员来修改。
目前,基于linux的crontab一般是定时执行或者定时器组件。但是存在以下缺陷:
1、基于linux的crontab定时任务不便于统一管理,对于大量的调度任务将会非常混乱。
2、基于定时器组件调度器不便于程序扩展。
发明内容
为克服现有技术的缺陷,本发明要解决的技术问题是提供了一种定时调度方法,其能够消除了调度延时,能够调度大量的定时任务,可扩展性好。
本发明的技术方案是:这种定时调度方法,该方法包括以下步骤:
(1)获取所有的定时任务集合;
(2)采用基于滑动窗口的时间计算器,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;
(3)采用一个时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
本发明通过基于滑动窗口的时间计算提前计算将要被调度的任务,通过时间检查器从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务,因此时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
还提供了一种定时调度系统,该系统包括:
获取模块,其配置来获取所有的定时任务集合;
时间计算器,其配置来计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;时间检查器,其配置来从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
附图说明
图1所示为根据本发明的定时调度方法的流程图。
图2所示为根据本发明的滑动窗口的示意图。
图3所示为根据本发明的所述步骤(2)的流程图。
具体实施方式
如图1所示,这种定时调度方法,该方法包括以下步骤:
(1)获取所有的定时任务集合;
(2)采用基于滑动窗口(如图2所示)的时间计算器,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;
(3)采用一个时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
本发明通过基于滑动窗口的时间计算提前计算将要被调度的任务,通过时间检查器从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务,因此时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
另外,如图3所示,所述步骤(2)包括以下分步骤:
(2.1)开始;
(2.2)计算一个时间窗口内的任务的调度时间点;
(2.3)判断当前时间是否到达当前时间窗口的阈值点,是则执行步骤
(2.4),否则等待时间窗口的长度再执行步骤(2.3);
(2.4)计算下一个时间窗口内的任务的调度时间点;
(2.5)下一个时间窗口设为当前时间窗口,返回步骤(2.3)。
另外,每个时间窗口的阈值一定,而且小于时间窗口的长度。
另外,时间窗口的阈值为时间窗口的长度的80%-90%。
另外,每个时间窗口的长度为10分钟,每个时间窗口的阈值为8分钟。
另外,两次相邻的计算时间之间的距离为一个时间窗口的长度。
另外,每一次在当前窗口的阈值处开始计算下一个时间窗口内的任务。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括上述实施例方法的各步骤,而所述的存储介质可以是:ROM/RAM、磁碟、光盘、存储卡等。因此,与本发明的方法相对应的,本发明还同时包括一种定时调度系统,该系统通常以与方法各步骤相对应的功能模块的形式表示。使用该方法的系统包括:
获取模块,其配置来获取所有的定时任务集合;
时间计算器,其配置来计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;
时间检查器,其配置来从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
另外,所述时间计算器,扫描所有的定时任务表达式,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中。
本发明的有益效果如下:
1.该系统消除了调度延时,而且能够调度大量的定时任务。
2.可扩展性好。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。

Claims (9)

1.一种定时调度方法,其特征在于:该方法包括以下步骤:
(1)获取所有的定时任务集合;
(2)采用基于滑动窗口的时间计算器,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;
(3)采用一个时间检查器,从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
2.根据权利要求1所述的定时调度方法,其特征在于:所述步骤(2)包括以下分步骤:
(2.1)开始;
(2.2)计算一个时间窗口内的任务的调度时间点;
(2.3)判断当前时间是否到达当前时间窗口的阈值点,是则执行步骤(2.4),否则等待时间窗口的长度再执行步骤(2.3);
(2.4)计算下一个时间窗口内的任务的调度时间点;
(2.5)下一个时间窗口设为当前时间窗口,返回步骤(2.3)。
3.根据权利要求2所述的定时调度方法,其特征在于:每个时间窗口的阈值一定,而且小于时间窗口的长度。
4.根据权利要求3所述的定时调度方法,其特征在于:时间窗口的阈值为时间窗口的长度的80%-90%。
5.根据权利要求4所述的定时调度方法,其特征在于:每个时间窗口的长度为10分钟,每个时间窗口的阈值为8分钟。
6.根据权利要求2所述的定时调度方法,其特征在于:两次相邻的计算时间之间的距离为一个时间窗口的长度。
7.根据权利要求3所述的定时调度方法,其特征在于:每一次在当前窗口的阈值处开始计算下一个时间窗口内的任务。
8.一种定时调度系统,其特征在于:该系统包括:
获取模块,其配置来获取所有的定时任务集合;
时间计算器,其配置来计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中;
时间检查器,其配置来从将要被调度的任务集合中逐个检查,如果一个任务需要被提交,时间检查器就提交该任务,之后从任务集合中删除该任务。
9.根据权利要求8所述的定时调度系统,其特征在于:所述时间计算器,扫描所有的定时任务表达式,计算未来一定长度的时间内将要被调度的任务集合,将未来一段时间内将要被调度的任务放入一个任务集合中。
CN201710985558.3A 2017-10-20 2017-10-20 一种定时调度方法及系统 Pending CN107861801A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710985558.3A CN107861801A (zh) 2017-10-20 2017-10-20 一种定时调度方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710985558.3A CN107861801A (zh) 2017-10-20 2017-10-20 一种定时调度方法及系统

Publications (1)

Publication Number Publication Date
CN107861801A true CN107861801A (zh) 2018-03-30

Family

ID=61696622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710985558.3A Pending CN107861801A (zh) 2017-10-20 2017-10-20 一种定时调度方法及系统

Country Status (1)

Country Link
CN (1) CN107861801A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120008636A1 (en) * 2007-12-27 2012-01-12 Cellco Partnership D/B/A Verizon Wireless Dynamically adjusted credit based round robin scheduler
CN103530179A (zh) * 2013-09-30 2014-01-22 大唐移动通信设备有限公司 一种定时任务的处理方法及装置
CN106250218A (zh) * 2015-06-11 2016-12-21 霍尼韦尔国际公司 用于使用滑动时间窗口调度任务的系统和方法
CN106874087A (zh) * 2017-01-25 2017-06-20 上海钜真金融信息服务有限公司 一种区块链智能合约定时任务调度方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120008636A1 (en) * 2007-12-27 2012-01-12 Cellco Partnership D/B/A Verizon Wireless Dynamically adjusted credit based round robin scheduler
CN103530179A (zh) * 2013-09-30 2014-01-22 大唐移动通信设备有限公司 一种定时任务的处理方法及装置
CN106250218A (zh) * 2015-06-11 2016-12-21 霍尼韦尔国际公司 用于使用滑动时间窗口调度任务的系统和方法
CN106874087A (zh) * 2017-01-25 2017-06-20 上海钜真金融信息服务有限公司 一种区块链智能合约定时任务调度方法

Similar Documents

Publication Publication Date Title
US10353810B2 (en) Software testing with minimized test suite
US10498842B2 (en) Methods for recording user interactions with a website
US9697500B2 (en) Presentation of information describing user activities with regard to resources
WO2018120721A1 (zh) 用户界面的测试方法、系统、电子装置及计算机可读存储介质
US9047258B2 (en) Systems and methods for the comparison of selected text
JP2016522475A (ja) 複数ヴァージョンをテストするための方法及びデバイス
EP2801943A1 (en) A system and method for generating a chronological timesheet
CN114416667B (zh) 快速分享网盘文件的方法、装置、网盘及存储介质
RU2640715C1 (ru) Способ сбора данных электронных анкет, основанный на событийном принципе
WO2018120720A1 (zh) 客户端程序的测试错误定位方法、电子装置及存储介质
US9009175B2 (en) System and method for database migration and validation
WO2018149085A1 (zh) 数据库系统优化的方法、系统、电子装置及存储介质
CN112041832A (zh) 分析作业服务中的计算重用
US20230118477A1 (en) System and method for data pruning via dynamic partition management
CN110806866A (zh) 一种前端管理系统的生成方法及装置
JP2016024486A (ja) データ活用システム及びその制御方法
CN107861801A (zh) 一种定时调度方法及系统
JP2009157693A (ja) データ入力装置、データ入力方法、そのプログラムおよび記憶媒体
CN112699372A (zh) 漏洞处理方法、装置和计算机可读存储介质
JP5821528B2 (ja) データチェックプログラム、データチェック方法及びデータチェック装置
RU2786951C1 (ru) Детектирование повторяющихся паттернов действий в пользовательском интерфейсе
CN109460346A (zh) 一种离线解析性能数据的方法、装置及存储介质
JP2013257747A (ja) 自由時間推定装置、方法、及びプログラム
CN108416895A (zh) 一种基于图像识别技术的企业发票录入系统及方法
US11704094B2 (en) Data integrity analysis tool

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180330