CN105094961A - 一种基于quartz框架的任务调度管理系统及其方法 - Google Patents

一种基于quartz框架的任务调度管理系统及其方法 Download PDF

Info

Publication number
CN105094961A
CN105094961A CN201510490870.6A CN201510490870A CN105094961A CN 105094961 A CN105094961 A CN 105094961A CN 201510490870 A CN201510490870 A CN 201510490870A CN 105094961 A CN105094961 A CN 105094961A
Authority
CN
China
Prior art keywords
task
script
performer
management
database
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
CN201510490870.6A
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 Si Tech Information Technology Co Ltd
Original Assignee
Beijing Si Tech Information 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 Si Tech Information Technology Co Ltd filed Critical Beijing Si Tech Information Technology Co Ltd
Priority to CN201510490870.6A priority Critical patent/CN105094961A/zh
Publication of CN105094961A publication Critical patent/CN105094961A/zh
Pending legal-status Critical Current

Links

Abstract

本发明公开了一种基于quartz框架的任务调度管理系统及其方法,所述系统包括至少一个调度管理装置和数据库;所述调度管理装置用于编辑各脚本任务以及配置各脚本任务对应的任务执行器和执行周期,且将编辑的各脚本任务存储于数据库中;将各脚本任务从数据库中加载到quartz框架中,以使quartz框架按照所述执行周期将各任务的执行指令下发到相应的任务执行器执行,并接收各任务执行器返回的执行结果。通过本发明提供的任务调度管理系统,能够对各脚本任务的调度进行统一管理,降低了运维人员的工作量,提高了整个任务调度的效率。

Description

一种基于quartz框架的任务调度管理系统及其方法
技术领域
本发明涉及任务调度技术领域,具体涉及一种基于quartz框架的任务调度管理系统及其方法。
背景技术
随着电信运营商的系统规模越来越庞大,业务越来越复杂,需要配置大量的定时调度任务,但是现有的系统,一般存在下面的问题:
(1)shell、sql脚本需要登录到各个业务主机维护,缺少对脚本任务的统一管理,脚本复用需要人工拷贝到各个主机,工作量大;
(2)脚本容易被篡改,没有记录;
(3)没有统一的调度管理,传统的办法是在主机上创建很多crontab任务,每个任务的执行状态、日志需要手工维护,工作量大;
(4)对于执行失败、执行超时的任务不能及时发现。
发明内容
本发明所要解决的技术问题是提供一种基于quartz框架的任务调度管理系统及其方法,能够对各脚本任务的调度进行统一管理,降低了运维人员的工作量,提高了整个任务调度的效率。
本发明解决上述技术问题的技术方案如下:
所述系统包括至少一个调度管理装置和数据库;
所述调度管理装置包括:
脚本管理模块,用于编辑各脚本任务并将编辑的所述各脚本任务存储于数据库中;
调度管理模块,用于为所述各脚本任务分配对应的任务执行器和执行周期;
调度管理中心,用于从数据库中加载所有的脚本任务到quartz框架中,以使quartz框架按照所述执行周期将各脚本任务的执行指令下发给对应的任务执行器;以及接收各任务执行器返回的执行结果并将该执行结果存储于数据库中;
任务执行器,用于根据所述执行指令执行对应的脚本任务,并向所述调度管理中心返回执行结果。
另一方面,本发明提供了一种基于quartz的任务调度管理方法,所述方法包括:
S1、对各脚本任务进行编辑并将编辑的所述各脚本任务存储于数据库中;
S2、为所述各脚本任务分配对应的任务执行器和执行周期;
S3、从数据库中加载各脚本任务到quartz框架中,以使quartz框架按照所述执行周期将各脚本任务的执行指令下发给对应的任务执行器;
S4、任务执行器根据所述下发的执行指令对对应的脚本任务进行执行,并返回执行结果。
本发明提供了一种基于quartz框架的任务调度管理系统及其方法,调度管理系统能够实现对各个脚本任务的编辑以及分配对应的任务执行器,并向分配的任务执行器下发任务执行指令,任务执行器根据执行指令对对应的脚本任务进行执行。通过本发明提供的系统,能够实现对各个脚本任务执行调度的统一管理,对各脚本任务进行全局的管控,降低了运维人员的工作量,提高了整个任务调度的效率。
附图说明
图1为本发明实施例一的一种基于quartz框架的任务调度管理系统示意图;
图2为本发明实施例二的一种基于quartz框架的任务调度管理方法流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
实施例一、一种基于quartz框架的任务调度管理系统。下面结合图1对本实施例提供的系统进行详细说明。
参见图1,本实施例提供的系统包括调度管理装置10和数据库20,其中,调度管理装置10包括脚本任务管理模块101、权限管理模块102、调度管理模块103、调度管理中心104、任务执行器105、日志管理模块106和告警管理模块107。
其中,调度管理装置10中的脚本管理模块101主要用于编辑各脚本任务并将编辑的各脚本任务存储于数据库中。
具体的,为了实现对各个任务调度的统一管理,其中,任务可以是shell、sql脚本任务,本实施例以脚本任务的统一调度为例进行说明。脚本管理模块101首先需要统一编辑好各个脚本任务并且将编辑好的各个脚本任务存储于数据库20中。另外,还会将编辑的各任务脚本下发给调度管理中心104以作为局部脚本任务的存储。脚本管理模块101还对各个脚本任务的版本进行管理,以及记录每个脚本任务的变更信息,防止各脚本任务丢失或者被篡改。
权限管理模块102主要用于对各脚本任务的操作权限进行管理。
具体的,当脚本管理模块101编辑好各个脚本任务后,为了保证各脚本任务的安全性,权限管理模块102对各脚本任务的操作权限进行配置,即针对不同的管理角色,配置不同的操作权限,比如,对各脚本任务的查看、编辑、删除、更改及执行等分配不同的权限。
调度管理模块103主要用于为各脚本任务分配对应的任务执行器和执行周期。
具体的,调度管理模块103为编辑好的各脚本任务分配对应的任务执行器(即脚本任务在哪些任务执行器上执行)和执行周期。为各个脚本任务配置其执行周期,以使后续的任务执行器可以按照各自的执行周期对各脚本任务进行执行。当脚本任务对应的任务执行器发生变更时,比如,新增、修改等,也会对这些更新信息进行同步更新。
调度管理中心104主要用于当需要进行脚本任务执行时,从数据库20中加载所有的脚本任务到quartz框架中,以使quartz框架按照前述为各脚本任务分配的执行周期将各脚本任务的执行指令下发给对应的任务执行器105;以及接收各任务执行器105返回的执行结果并将该执行结果存储于数据库20中。
具体的,当需要对各脚本任务执行时,调度管理中心104从数据库20中加载所有的脚本任务到调度管理中心104中的quartz框架中,同时调度管理中心104还提供增量同步接口,包括脚本任务的启用、停止、增加、修改、删除等操作。
调度管理中心104加载完数据库20中的所有脚本任务后,调度管理中心104中的quartz框架会定时将任务执行指令下发给对应的任务执行器105。
需要说明的是,本实施例中配置的调度管理中心104可以为一个也可以为多个,通常为多个,当配置的调度管理中心104为多个时,选择其中的一个调度管理中心104对所有(包括选择的调度管理中心)调度管理中心104进行负载均衡处理。
各个任务执行器105主要用于根据调度管理中心104中的quartz框架下发的任务执行指令执行对应的脚本任务,并向调度管理中心104返回执行结果。
具体的,当任务执行器105接收到quartz框架下发的任务执行指令后,对对应的脚本任务进行执行。其中,任务执行器105对对应脚本任务的执行方式通常有两种,即远程执行和本地执行。当任务执行器105对对应的脚本任务进行远程执行时,可通过telnet/ssh/ftp命令进行远程操作并返回执行结果。
调度管理中心104接收到各任务执行器105返回的执行结果将执行结果进行汇总分析后存储于数据库20中以供查询。
日志管理中心106主要用于对各任务执行器105执行对应的脚本任务的执行日志进行管理,比如,通过查看各脚本任务的执行日志了解各脚本任务的执行状态等。
告警管理模块107主要用于当脚本任务在任务执行器104上执行失败或执行超时时,向相关负责人发送告警通知。
具体的,当有脚本任务在任务执行器104上执行失败或执行超时时,告警管理模块107会向相关负责人发送告警通知。其中,告警管理模块107会预先配置各脚本任务对应的相关负责人,同时配置告警通知方式,比如,本实施例中告警管理模块107通过短信或者邮件的方式向相关负责人发送告警通知。
实施例二、一种基于quartz框架的任务调度管理方法。下面结合图2对本实施例提供的方法进行详细说明。
参见图2,S1、对各脚本任务进行编辑并将编辑的所述各脚本任务存储于数据库中。
具体的,在对各脚本任务统一调度之前,对需要调度的脚本任务进行编辑,并将编辑好的各脚本任务存储于数据库中。
S2、为各脚本任务分配对应的任务执行器和执行周期。
具体的,编辑好各脚本任务后,为各脚本任务分配对应的任务执行器(即各脚本任务在哪些任务执行器上进行执行)以及各脚本任务的执行周期。
S3、从数据库中加载各脚本任务到quartz框架中,以使quartz框架按照所述执行周期将各脚本任务的执行指令下发给对应的任务执行器。
具体的,当需要对各个脚本任务进行执行时,将数据库中所有的脚本任务均加载到调度管理中心的quartz框架中,以使调度管理中心中的quartz框架按照各脚本任务的执行周期定时执行各脚本任务。调度管理中心中的quartz框架定时将执行各脚本任务的任务执行指令发送给对应的任务执行器。另外,调度管理中心还提供增量同步接口,包括脚本任务的启用、停止、增加、修改、删除等操作。
S4、任务执行器根据所述下发的执行指令对对应的脚本任务进行执行,并返回执行结果。
具体的,各个任务执行器根据调度管理中心中的quartz框架下发的任务执行指令,对对应的脚本任务进行执行,并向调度管理中心返回执行结果。其中,任务执行器对对应脚本任务的执行方式通常有两种,即远程执行和本地执行。当任务执行器对对应的脚本任务进行远程执行时,可通过telnet/ssh/ftp命令进行远程操作并向调度管理中心返回执行结果。调度管理中心将接收到的执行结果进行汇总分析,将汇总分析后的执行结果存储于数据库中以供管理人员实时查询。另外,对各任务执行器执行对应的脚本任务的执行日志进行管理,比如,通过查看执行日志了解各脚本任务的执行状态。
本实施例还会将执行失败或者执行超时的脚本任务存放于数据库中的告警列表中,并向相关负责人发送告警通知。本实施例可以采用多种方式发送报警通知,通常采用短信或者邮件的方式向对应的相关负责人发送告警通知。
本发明提供的一种基于quartz框架的任务调度管理系统及其方法,编辑需要调度的各脚本任务并将各脚本任务存储于数据库中,为编辑的各脚本任务分配对应的任务执行器和执行周期,将数据库中的所有脚本任务加载到调度管理中心的quartz框架中,以使quartz定时向任务执行器下发任务执行指令,以使任务执行器执行相应的脚本任务,并返回执行结果,能够实现对各个脚本任务调度的统一管理,降低了运维人员的工作量,提高了整个任务调度的效率;能够对各脚本任务的版本和权限进行管理,并记录每次脚本任务的更新信息,防止脚本任务被篡改或丢失,不同的管理员角色对各脚本任务的操作权限不同,提高了各脚本任务的操作安全性;对执行失败或者执行超时的脚本任务进行告警提示,能够及时发现故障情况。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于quartz框架的任务调度管理系统,其特征在于,所述系统包括至少一个调度管理装置和数据库;
所述调度管理装置包括:
脚本管理模块,用于编辑各脚本任务并将编辑的所述各脚本任务存储于数据库中;
调度管理模块,用于为所述各脚本任务分配对应的任务执行器和执行周期;
调度管理中心,用于从数据库中加载所有的脚本任务到quartz框架中,以使quartz框架按照所述执行周期将各脚本任务的执行指令下发给对应的任务执行器;以及接收各任务执行器返回的执行结果并将该执行结果存储于数据库中;
任务执行器,用于根据所述执行指令执行对应的脚本任务,并向所述调度管理中心返回执行结果。
2.如权利要求1所述的一种基于quartz框架的任务调度管理系统,其特征在于,所述调度管理装置还包括:
权限管理模块,用于对所述各脚本任务的操作权限进行管理。
3.如权利要求1所述的一种基于quartz框架的任务调度管理系统,其特征在于,所述调度管理装置还包括:
日志管理模块,用于对各个任务执行器执行对应的脚本任务的执行日志进行管理。
4.如权利要求1所述的一种基于quartz框架的任务调度管理系统,其特征在于,所述调度管理装置还包括:
告警管理模块,用于当脚本任务在对应的任务执行器上执行失败或执行超时时,向相关负责人发送告警通知。
5.如权利要求1所述的一种基于quartz框架的任务调度管理系统,其特征在于,所述调度管理中心为一个或多个,当所述调度管理中心为多个时,选择其中一个调度管理中心对所有的调度管理中心进行负载均衡。
6.一种基于quartz框架的任务调度管理方法,其特征在于,所述方法包括:
S1、对各脚本任务进行编辑并将编辑的所述各脚本任务存储于数据库中;
S2、为所述各脚本任务分配对应的任务执行器和执行周期;
S3、从数据库中加载各脚本任务到quartz框架中,以使quartz框架按照所述执行周期将各脚本任务的执行指令下发给对应的任务执行器;
S4、任务执行器根据所述下发的执行指令对对应的脚本任务进行执行,并返回执行结果。
7.如权利要求6所述的一种基于quartz框架的任务调度管理方法,其特征在于,所述方法还包括:
对所述各脚本任务的操作权限进行管理。
8.如权利要求6所述的一种基于quartz框架的任务调度管理方法,其特征在于,所述步骤S4之后还包括:
将接收到的执行结果存储于数据库中以供查询;
以及对所述任务执行器执行对应的脚本任务的执行日志进行管理。
9.如权利要求6所述的一种基于quartz框架的任务调度管理方法,其特征在于,所述方法包括:
当脚本任务在对应的任务执行器上执行失败或执行超时时,向相关负责人发送告警通知。
10.如权利要求9所述的一种基于quartz框架的任务调度管理方法,其特征在于,所述当脚本任务在对应的任务执行器上执行失败或执行超时时,向相关负责人发送告警通知具体包括:
当脚本任务执行在对应的任务执行器上失败或执行超时时,通过短信或邮件方式向相关负责人发送告警通知。
CN201510490870.6A 2015-08-11 2015-08-11 一种基于quartz框架的任务调度管理系统及其方法 Pending CN105094961A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510490870.6A CN105094961A (zh) 2015-08-11 2015-08-11 一种基于quartz框架的任务调度管理系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510490870.6A CN105094961A (zh) 2015-08-11 2015-08-11 一种基于quartz框架的任务调度管理系统及其方法

Publications (1)

Publication Number Publication Date
CN105094961A true CN105094961A (zh) 2015-11-25

Family

ID=54575470

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510490870.6A Pending CN105094961A (zh) 2015-08-11 2015-08-11 一种基于quartz框架的任务调度管理系统及其方法

Country Status (1)

Country Link
CN (1) CN105094961A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106155786A (zh) * 2016-06-23 2016-11-23 浪潮(北京)电子信息产业有限公司 一种云平台任务管理方法及系统
CN107465641A (zh) * 2016-06-02 2017-12-12 上海海典软件股份有限公司 基于三层架构软件系统及其数据请求方法
CN107766136A (zh) * 2017-09-30 2018-03-06 南威软件股份有限公司 一种任务集群调度管理的方法
CN108510081A (zh) * 2018-03-23 2018-09-07 北京京东尚科信息技术有限公司 机器学习方法和平台
CN109271199A (zh) * 2018-09-11 2019-01-25 航天信息软件技术有限公司 一种用于数据库持续集成与脚本文件管理的方法及系统
CN109710605A (zh) * 2017-10-25 2019-05-03 卓望数码技术(深圳)有限公司 一种设备信息自动化采集装置以及方法
CN110688212A (zh) * 2019-09-26 2020-01-14 山东浪潮通软信息科技有限公司 基于quartz的定时管理方法及系统
CN111026509A (zh) * 2019-12-12 2020-04-17 广州西麦科技股份有限公司 用于运维远程主机执行作业的方法、系统以及存储介质
CN112685164A (zh) * 2021-01-08 2021-04-20 浪潮软件科技有限公司 基于dac定时任务发送日报的方法及系统
CN115421898A (zh) * 2022-11-07 2022-12-02 杭州比智科技有限公司 一种基于quartz框架的大数据任务调度管理系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080320477A1 (en) * 2007-06-20 2008-12-25 Mariann Meeks Method for scheduling and customizing surveillance tasks with web-based user interface
CN101604242A (zh) * 2009-07-17 2009-12-16 深圳市珍爱网信息技术有限公司 Java应用系统中实现定时任务的系统
CN101887381A (zh) * 2010-06-22 2010-11-17 北京伟库电子商务科技有限公司 基于Quartz框架的配置定时任务的方法和装置
CN103677973A (zh) * 2013-09-01 2014-03-26 西安重装渭南光电科技有限公司 一种分布式多任务调度管理系统
CN104536809A (zh) * 2014-11-26 2015-04-22 上海瀚之友信息技术服务有限公司 一种基于客户端、服务器系统的分布式定时任务调度系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080320477A1 (en) * 2007-06-20 2008-12-25 Mariann Meeks Method for scheduling and customizing surveillance tasks with web-based user interface
CN101604242A (zh) * 2009-07-17 2009-12-16 深圳市珍爱网信息技术有限公司 Java应用系统中实现定时任务的系统
CN101887381A (zh) * 2010-06-22 2010-11-17 北京伟库电子商务科技有限公司 基于Quartz框架的配置定时任务的方法和装置
CN103677973A (zh) * 2013-09-01 2014-03-26 西安重装渭南光电科技有限公司 一种分布式多任务调度管理系统
CN104536809A (zh) * 2014-11-26 2015-04-22 上海瀚之友信息技术服务有限公司 一种基于客户端、服务器系统的分布式定时任务调度系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107465641A (zh) * 2016-06-02 2017-12-12 上海海典软件股份有限公司 基于三层架构软件系统及其数据请求方法
CN106155786A (zh) * 2016-06-23 2016-11-23 浪潮(北京)电子信息产业有限公司 一种云平台任务管理方法及系统
CN107766136A (zh) * 2017-09-30 2018-03-06 南威软件股份有限公司 一种任务集群调度管理的方法
CN109710605A (zh) * 2017-10-25 2019-05-03 卓望数码技术(深圳)有限公司 一种设备信息自动化采集装置以及方法
CN109710605B (zh) * 2017-10-25 2022-12-16 卓望数码技术(深圳)有限公司 一种设备信息自动化采集装置以及方法
CN108510081A (zh) * 2018-03-23 2018-09-07 北京京东尚科信息技术有限公司 机器学习方法和平台
CN109271199A (zh) * 2018-09-11 2019-01-25 航天信息软件技术有限公司 一种用于数据库持续集成与脚本文件管理的方法及系统
CN110688212A (zh) * 2019-09-26 2020-01-14 山东浪潮通软信息科技有限公司 基于quartz的定时管理方法及系统
CN111026509A (zh) * 2019-12-12 2020-04-17 广州西麦科技股份有限公司 用于运维远程主机执行作业的方法、系统以及存储介质
CN111026509B (zh) * 2019-12-12 2023-10-17 广州西麦科技股份有限公司 用于运维远程主机执行作业的方法、系统以及存储介质
CN112685164A (zh) * 2021-01-08 2021-04-20 浪潮软件科技有限公司 基于dac定时任务发送日报的方法及系统
CN115421898A (zh) * 2022-11-07 2022-12-02 杭州比智科技有限公司 一种基于quartz框架的大数据任务调度管理系统及方法

Similar Documents

Publication Publication Date Title
CN105094961A (zh) 一种基于quartz框架的任务调度管理系统及其方法
CN109492991B (zh) 配电工程建设智能化综合管理系统
CN105843182B (zh) 一种基于oms的电力调度事故预案系统及方法
CN102130966B (zh) 一种用于企业综合信息平台的系统架构及其实现方法
CN111190730B (zh) 异构云管理平台
CN109600269A (zh) 一种基于dcos的云管理平台
EP2429120A1 (en) Distributed network management system, network element management server, and data configuration management method
CN104463492A (zh) 一种电力系统云仿真平台的运营管理方法
CA2796448A1 (en) Method and system for deployed operations support
CN103188088A (zh) 设备信息采集系统及方法
CN104615617A (zh) 一种变电站设备调度监控信息处理系统
CN102546796A (zh) 业务服务器数据更新处理系统及方法
CN102663543A (zh) 一种用于企业数据统一平台的调度系统
CN103886398A (zh) 一种跨系统异构环境下的业务监控方法和系统
CN109379217A (zh) 一种城域网异厂家业务编排器
CN114237810A (zh) 一种基于bim集成交付模式的云计算平台
CN104036358A (zh) 一种银行的作业自动化调度系统
CN105786494A (zh) 一种软件配置信息数据管理系统
CN113378540A (zh) 一种飞机的飞行记录系统
CN112153014A (zh) 一种基于数字中台的商业运营系统及商业运营方法
US20140136708A1 (en) Orchestration management of information technology
CN108763503A (zh) 一种基于企业私有云的知识库管理系统及方法
CN109829841A (zh) 一种政府采购评审专家管理系统的设计方法
CN104850947A (zh) 一种网格化多业务流程统一管理方法及装置
CN105354891A (zh) 一种考勤管理的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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: 20151125