基于多维规律定制的任务管理调度系统及方法

文档序号:6358345阅读:130来源:国知局
专利名称:基于多维规律定制的任务管理调度系统及方法
技术领域
本发明涉及一种基于多维规律定制的任务管理调度系统及方法,属于任务调度技术领域。
背景技术
各种企业应用几乎都会碰到定时任务调度的需求,定时任务调度是指由系统在预设的定时时间自动执行后台任务,所有在指定时间一次性或周期性执行的后台任务称之为后台定时任务,简称定时任务;一个定时任务功能项称之为定时任务项。定时任务调度服务系统负责对定时任务的执行计划进行控制和处理、为定时任务的调度执行提供了灵活多样的定时策略、并对定时任务的执行过程进行监管以及记录定时任务执行过程的相关信息。 从定时任务项的角度思考定时任务调度服务系统时,可以将定时任务调度服务系统理解为一个容器,它负责加载所有定时任务项并且负责对每个定时任务项进行调度执行。例如,对于一个典型的信息管理系统来说,在每月1号凌晨统计上个月各部门的业务数据生成月报表,每半个小时查询用户是否已经有快到期的待处理业务等,这些都属于定时任务。目前,定时任务调度服务系统已在各行各业的信息系统中得到了应用,为系统中的后台任务执行提供了基础平台和有利的保障,系统中绝大多数统计业务模块、复杂数据查询单元的运行效率得到了很大的提高。但是当前已有的定时任务调度系统仍存在着以下缺陷1、现有定时任务调度系统的定时方式单一,很难满足多维条件限制下的定时方式扩展。如业务需求、权限需求、定时需求等多维条件限制下需要的定时方式,现有定时任务只能靠人工的在线管理才能实现或者只能进行调度系统的二次开发才能实现。2、现有定时任务无法满足对于不规律的定时需求的要求。现有的定时任务通常是周期性的或者是规律性地进行调度,而对于不规律的需求,现有定时任务调度系统难以实现。3、现有定时任务调度系统不具备跨系统的通用性。对于目前大量的集成系统,现有的定时任务系统通常是各子系统之间各自为政,对于跨系统统一管理的应用或新增的系统应用需要进行大量的重复性的二次开发工作。4、现有定时任务调度系统无法满足当需求变化时调度系统的可适应性。现有定时任务调度系统启动之后如果需求发生短时期的变化,只能通过人工在线管理或者二次开发进行完成,这样不但消耗了大量的人力物力,还增加的系统的复杂性,可以说是得不偿失。5、现有定时任务调度系统无法实现跨平台调用的扩展能力。对于目前大量的集成系统来说,各个系统采用的实现技术可能各不相同,而现有的定时任务系统通常是根据各子系统的技术单独进行开发和运行,无法实现跨平台地统一的管理。6、现有定时任务调度系统的可配置和可管理性混乱且根据各自系统的针对性不同,配置和管理方式各不同。使得定时任务管理效率低下,甚至需要进行二次开发才能满足系统的要求。由此可见,上述现有的定时任务调度系统在体系结构、扩展性、通用性、管理方法与使用上,显然仍存在有不便与缺陷,而亟待加以进一步改进。为了解决上述存在的问题, 现有技术中一直未见适用的设计被发展完成,而一般产品及方法又没有适切的结构及方法能够解决上述问题,因此是相关业者急欲解决的问题。

发明内容
本发明提供一种基于多维规律定制的任务管理调度系统及方法,用以在多维度条件限制下实现可配置、可管理、跨平台调用的任务管理调度方式。本发明一方面提供一种基于多维规律定制的任务管理调度系统,其中包括任务管理界面框架,用于接收用户为任务设置的多维规律信息;任务仓库,用于存储待执行的任务数据;任务管理服务框架,根据任务管理界面框架接收到的所述多维规律信息从所述任务仓库查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务;任务调度框架,当任务管理服务框架新建或更新的所述任务的执行时刻到达时, 调用并执行该任务中相应的业务服务。本发明另一方面提供一种基于多维规律定制的任务管理调度方法,其中包括接收用户为任务设置的多维规律信息;根据所述多维规律信息查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务;当新建或更新的所述任务的执行时刻到达时,调用并执行该任务中相应的业务服务。本发明在多维度条件限制下实现了可配置、可管理、跨平台调用的任务管理调度方式。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明所述基于多维规律定制的任务管理调度系统的总体架构图;图2为本发明所述基于多维规律定制的任务管理调度系统的应用架构图;图3为本发明所述基于多维规律定制的任务管理调度系统的技术实例图;图4为图1所示任务管理服务框架20的具体结构示意图;图5为图1所示任务管理服务框架20的信令流程图;图6为图1所示任务调度框架30的具体结构示意图;图7为图1所示业务处理服务框架40的具体结构示意图;图8为图1所示任务调度框架30及业务处理服务框架40的信令流程图9为本发明所述基于多维规律定制的任务管理调度系统的物理部署图;图10为本发明所述基于多维规律定制的任务管理调度方法实施例的流程图;图11为图10所示步骤120的具体流程图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本发明所述基于多维规律定制的任务管理调度系统的总体架构图,如图所示,该系统至少包括任务管理界面框架10、任务管理服务框架20、任务调度框架30及任务仓库60,另外,还可以进一步包括业务处理服务框架40和数据服务框架50,以下分别进行说明仵各管理界面框架10任务管理界面框架10接收用户为任务设置的多维规律信息,其中,用户可以通过任务管理界面框架10从时间、业务要求、权限等多个方面进行规律选择和定制多维规律, 形成入参参数。具体地,该任务管理界面框架10可以由多维规律选择器组件和任务管理界面组件构成,并且可以被灵活配置成为Web瘦客户端模式或服务器/客户端(C/幻胖客户端模式。在不同的系统实现平台下,多维规律选择器组件可以分为Web界面方式或富客户机平台(Rich Client Platform,简称RCP)方式实现;任务管理界面组件可以根据不同的应用要求,选用不同的组件模式来实现Web瘦客户端方式或者C/S胖客户端模式,很好地适应了不同业务需求。在图3中,该任务管理界面框架10表示为RCP界面展示。任务仓库60所述任务仓库60用于存储待执行的任务数据,其中具体定义了存储任务及任务日志的专有的数据结构,该数据结构可以在不同数据库系统或文件系统中进行实现,并配合数据服务框架50对任务数据进行管理。具体地,该任务仓库60可以包括两个方面的内容实现,一是实现可配置的任务仓库模型,可以根据需要对任务仓库的数据结构进行裁剪来达到系统性能和系统安全性方面的平衡;二是实现任务仓库的自动建立,根据任务仓库数据结构的定义和存储系统选型自动产生可以访问和操作的数据逻辑结构。在图2中,该任务仓库60可以以数据库的形式出现,在图3中,该数据库具体为Oracle数据库。任务管理服务框架20前述任务管理界面框架10接收到所述多维规律信息后,由任务管理服务框架20 根据任务管理界面框架10接收到的所述多维规律信息从所述任务仓库60查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务。具体地,所述任务管理服务框架20可以根据所述多维规律信息通过所述数据服务框架50从所述任务仓库60查询所述任务的任务状态。在图2中,该任务管理服务框架20表示为任务管理服务组件;在图3中,表示为服务器端组件模型(EJB)服务。如图4所示,该任务管理服务框架20可以包括时钟管理模块21和任务管理模块22,其工作原理如下时钟管理模块21用于管理内存执行队列中的任务的时钟状态;任务管理模块22 中的任务状态查询单元2201根据所述多维规律信息通过所述数据服务框架50从所述任务仓库60查询所述任务的任务状态;当任务状态查询单元2201查询到所述任务状态时,由时钟状态查询单元2202根据所述多维规律信息通过所述时钟管理模块21在内存执行队列中查询所述任务的时钟状态。具体地,由于内存队列中保存的时钟状态数据与任务仓库60中保存的任务数据的格式不同,因此可以将多个用户分别为所述任务设置的多个多维规律信息进行叠加运算生成二进制参数数据;然后根据所述二进制参数数据查询所述任务的时钟状态。其中,所述二进制参数数据可以采用校验码+ 二进制码数据的方式进行存储,以保证其正确性和安全性。然后,由条件判断单元2203判断查询到的所述任务的任务状态和时钟状态是否满足所述多维规律信息中携带的入参参数;当条件判断单元2203判断出所述任务状态和时钟状态不满足所述入参参数时,由任务更新单元2204根据所述入参参数更新所述任务; 如果上述任务状态查询单元2201未查询到所述任务状态,则可以由任务创建单元2205根据所述多维规律信息携带的入参参数通过所述数据服务框架在所述任务仓库中新建任务。 具体的信令流程可参见图5所示。数据服各框架50所述数据服务框架50用于提供对各种不同数据库的一致操作和数据操作扩展接口,对于现有的一般主流关系型数据库如“Mysql”、“SQL Server'V'Syhse”和“Oracle”等, 数据服务组件已经实现了对这些数据库的透明操作,如果对于新型的其他数据库甚至是文件系统存储方式,数据服务组件提供了数据操作扩展接口,可以通过少量的二次开发实现该接口对于陌生数据库或陌生存储方式的支持。实现了可以扩展的数据操作接口,以满足扩展新的数据存储结构模式下的数据操作。在图2中,该数据服务框架50表示为数据服务组件;在图3中,表示为一种开放源代码项目(Ibatis)。任务调度框架30当上述任务管理服务框架20新建或更新的所述任务的执行时刻到达时,由任务调度框架30调用并执行该任务中相应的业务服务。具体地,如图6所示,该任务调度框架 30具体可以包括时刻触发模块31和作业对象模块32,如图6所示,其工作原理如下首先由时刻触发模块31检测由任务管理服务框架新建或更新的所述任务的执行时刻是否到达时;当时刻触发模块31检测到所述执行时刻到达时,由作业对象模块32通过所述数据服务框架50从所述任务仓库60查询该任务的执行状态,并根据该执行状态发出调用指令。该任务调度框架30在时刻到达时调度任务开始运行,实现了定时和轮循调度引擎,该引擎可根据任务管理服务框架的设定实现定时调度和轮循调度。其中的调度引擎需实现定时和轮循调度引擎,该引擎可根据任务管理服务框架的设定实现定时调度和轮循调度,可以选择使用稳定的产品或开源项目来进行实现。在图2中,该任务调度框架30表示为任务调度组件;在图3中,表示为一种开放源代码项目(Quartz)。其中,任务调度组件需实现调度引擎组件和管理接口,管理接口可以采用无状态EJB来实现。调度引擎分为定时和轮循调度引擎,该引擎可根据任务管理服务框架的设定实现定时调度和轮循调度,可以选择使用稳定的产品或开源项目来进行实现。并且为了保证调度的正确性和准确性,需要对调度弓I擎的时钟采用单例模式。业各处理服各框架40如图7所示,该业务处理服务框架40包括业务服务模块41和消息驱动模块 (MDB) 42,其中,业务服务模块41用于待执行的业务服务,其工作原理如下当接收到作业对象模块32发出的所述调用指令后,业务处理服务框架40中的消息驱动模块42用于通过所述数据服务框架50从任务仓库60查询所述任务中相应业务服务的业务服务信息,并根据该业务服务信息从所述业务服务模块中调用并执行相应的业务服务。该业务处理服务框架40负责记录任务日志并调用相应的业务处理,是与各种异构系统之间进行通讯和调用的接口框架,通过此接口框架可以调用各种异构系统开放的业务功能,保证调度系统的通用性和可扩展性。所述的跨系统和跨平台是根据针对不同系统的接口进行的特定的二次开发,以统一接口和调用方式具体实现来提高系统的可扩展性。 在图2中,该业务处理服务框架40表示为业务处理服务组件;在图3中,表示为EJB MDB 服务(Service) +无状态(StateLess) EJB。业务处理服务组件负责记录任务日志并调用相应的业务处理,由于需要对跨系统和跨平台应用的调用,该组件实现了在于与各种异构系统之间进行通讯和调用的接口框架,通过此接口框架可以调用各种异构系统开放的业务功能,保证调度系统的通用性和可扩展性。由于对异构系统和跨平台访问的特点,业务处理组件对业务服务的调用需要实现对业务服务调用接口来完成,并且根据不同的需要进行少量的二次开发。具体的信令流程可参见图8所示。另外,为了保证本实施例所述基于多维规律定制的任务管理调度系统的高效、稳定和正确性,可以采用图9所示的物理部署方式,其中任务调度服务器配置为单台服务器以满足单例时钟引擎的要求。业务执行服务器和数据库服务器可采用集群方式进行配置, 以达到系统大并发、高可用性和正确性方面的要求。图10为本发明所述基于多维规律定制的任务管理调度方法实施例的流程图,如图所示,该方法包括步骤110,接收用户为任务设置的多维规律信息。具体地,用户可以通过任务管理界面框架10从时间、业务要求、权限等多个方面进行规律选择和定制多维规律,形成入参参数。步骤120,根据所述多维规律信息查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务。步骤130,当新建或更新的所述任务的执行时刻到达时,调用并执行该任务中相应的业务服务。具体地,如图11所示,所述步骤120可以包括如下步骤步骤121,根据所述多维规律信息查询所述任务的任务状态。步骤122,若未查询到所述任务状态,则根据所述多维规律信息中携带的入参参数新建任务;步骤123,若查询到所述任务状态,则根据所述多维规律信息在内存执行队列中查询所述任务的时钟状态。
8
具体地,可以将多个用户分别为所述任务设置的多个多维规律信息进行叠加运算生成二进制参数数据;然后根据所述二进制参数数据查询所述任务的时钟状态。步骤124,判断所述任务的任务状态和时钟状态是否满足所述多维规律信息中携带的入参参数,若不满足,则根据所述入参参数更新所述任务。另外,上述判断的结果为满足,则表明无需对所述任务进行更新。本实施例所述系统和方法在多维度条件限制下实现了可配置、可管理、跨平台调用的任务管理调度方式,并具体实现了如下技术效果1、提供了一种新的可满足多维条件限制下的可满足不规律定时要求的定时方式扩展。如业务需求、权限需求、定时需求等多为条件限制下需要的定时方式和对于不规律的定时需求的定时方式等,从而更加适于实用,且具有产业上的利用价值;2、提供了一种新的具备跨系统、跨平台通用性的定时任务调度系统,实现集成系统环境下跨系统和跨平台统一管理的应用,从而更加适于实用,易于系统的裁剪和扩展。3、提供了一种新的统一配置和管理的定时任务系统,满足在当需求发生短时期的变化时调度系统进行简单的配置和管理即可达到调度系统对于需求变化的可适应性,从而更加适于实用。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
9
权利要求
1.一种基于多维规律定制的任务管理调度系统,其特征在于,包括 任务管理界面框架,用于接收用户为任务设置的多维规律信息; 任务仓库,用于存储待执行的任务数据;任务管理服务框架,根据任务管理界面框架接收到的所述多维规律信息从所述任务仓库查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务;任务调度框架,当任务管理服务框架新建或更新的所述任务的执行时刻到达时,调用并执行该任务中相应的业务服务。
2.根据权利要求1所述的系统,其特征在于还包括数据服务框架,所述任务管理服务框架用于根据任务管理界面框架接收到的所述多维规律信息通过所述数据服务框架从所述任务仓库查询所述任务的任务状态。
3.根据权利要求2所述的系统,其特征在于所述任务管理服务框架包括 时钟管理模块,用于管理内存执行队列中的任务的时钟状态;任务管理模块,包括任务状态查询单元,用于根据所述多维规律信息通过所述数据服务框架从所述任务仓库查询所述任务的任务状态;时钟状态查询单元,用于当任务状态查询单元查询到所述任务状态时,根据所述多维规律信息通过所述时钟管理模块在内存执行队列中查询所述任务的时钟状态;条件判断单元,用于判断所述任务的任务状态和时钟状态是否满足所述多维规律信息中携带的入参参数。任务更新单元,用于当条件判断单元判断出所述任务状态和时钟状态不满足所述入参参数时,根据所述入参参数更新所述任务;任务创建单元,用于当任务状态查询单元未查询到所述任务状态时,根据所述多维规律信息携带的入参参数通过所述数据服务框架在所述任务仓库中新建任务。
4.根据权利要求3所述的系统,其特征在于所述任务调度框架包括时刻触发模块,用于检测由任务管理服务框架新建或更新的所述任务的执行时刻是否到达时;作业对象模块,用于当时刻触发模块检测到所述执行时刻到达时,通过所述数据服务框架从所述任务仓库查询该任务的执行状态,并根据该执行状态发出调用指令。
5.根据权利要求3所述的系统,其特征在于还包括业务处理服务框架,包括 业务服务模块,用于待执行的业务服务;消息驱动模块,用于当接收到所述调用指令后,通过所述数据服务框架从任务仓库查询所述任务中相应业务服务的业务服务信息,并根据该业务服务信息从所述业务服务模块中调用并执行相应的业务服务。
6.一种基于多维规律定制的任务管理调度方法,其特征在于,包括 接收用户为任务设置的多维规律信息;根据所述多维规律信息查询所述任务的任务状态和时钟状态,并根据所述任务状态、 时钟状态及多维规律信息新建或更新任务;当新建或更新的所述任务的执行时刻到达时,调用并执行该任务中相应的业务服务。
7.根据权利要求6所述的方法,其特征在于所述根据所述多维规律信息查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务包括根据所述多维规律信息查询所述任务的任务状态;若未查询到所述任务状态,则根据所述多维规律信息中携带的入参参数新建任务;若查询到所述任务状态,则根据所述多维规律信息在内存执行队列中查询所述任务的时钟状态;判断所述任务的任务状态和时钟状态是否满足所述多维规律信息中携带的入参参数, 若不满足,则根据所述入参参数更新所述任务。
8.根据权利要求6所述的方法,其特征在于所述根据所述多维规律信息在内存执行队列中查询所述任务的时钟状态包括将多个用户分别为所述任务设置的多个多维规律信息进行叠加运算生成二进制参数数据;根据所述二进制参数数据查询所述任务的时钟状态。
全文摘要
本发明提供一种基于多维规律定制的任务管理调度系统及方法,其中方法包括接收用户为任务设置的多维规律信息;根据所述多维规律信息查询所述任务的任务状态和时钟状态,并根据所述任务状态、时钟状态及多维规律信息新建或更新任务;当新建或更新的所述任务的执行时刻到达时,调用并执行该任务中相应的业务服务。本发明在多维度条件限制下实现了可配置、可管理、跨平台调用的任务管理调度方式。
文档编号G06Q10/00GK102156920SQ201110099278
公开日2011年8月17日 申请日期2011年4月20日 优先权日2011年4月20日
发明者吴刚, 孟宪宇, 李良文, 王云, 邵晓风 申请人:易程科技股份有限公司, 铁道部运输局
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1