CN110968401A - 基于Quartz的任务调度方法及装置 - Google Patents
基于Quartz的任务调度方法及装置 Download PDFInfo
- Publication number
- CN110968401A CN110968401A CN201811136748.9A CN201811136748A CN110968401A CN 110968401 A CN110968401 A CN 110968401A CN 201811136748 A CN201811136748 A CN 201811136748A CN 110968401 A CN110968401 A CN 110968401A
- Authority
- CN
- China
- Prior art keywords
- scheduler
- target
- information
- acquiring
- application
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 239000010453 quartz Substances 0.000 title claims abstract description 42
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N silicon dioxide Inorganic materials O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 title claims abstract description 42
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
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/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供的基于Quartz的任务调度方法及装置,在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;根据所述目标调度器的信息,获取所述目标调度器;在获取到所述目标调度器后,启动所述目标调度器,从而实现了针对指定调度器的任务重启,提高了任务调度的灵活性。
Description
技术领域
本发明涉及计算机软件技术领域,更具体的说,涉及基于Quartz的任务调度方法及装置。
背景技术
Quartz是OpenSymphony开源组织在任务调度(Job scheduling)领域的一个开源项目,它可以与J2EE与J2SE应用程序相结合,也可以单独使用。
现有基于Quartz的任务调度方案,通常是为系统配置一个全局的调度器(Scheduler),并将该Scheduler的信息预先配置在配置文件中,当应用程序重启时,根据配置好的配置文件获取该Scheduler,并重启该Scheduler的所有任务(Job)。但是,对于复杂的业务场景来说,不同的业务可能会采用不同的Job,而直接对全局Scheduler进行重启而导致所有Job一并重启的调度方式,并不能单独针对指定业务的Job进行重启,任务调度的灵活性较差。
因此,目前迫切需要一种切实有效的基于Quartz的任务调度方案,以提高任务调度的灵活性。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于Quartz的任务调度方法及装置。
为实现上述目的,本发明提供如下技术方案:
一种基于Quartz的任务调度方法,所述方法包括:
在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
根据所述目标调度器的信息,获取所述目标调度器;
在获取到所述目标调度器后,启动所述目标调度器。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定业务;
根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定特征;
从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
优选的,所述目标调度器的信息包括目标调度器名称;所述根据所述目标调度器的信息,获取所述目标调度器包括:
利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,所述根据所述目标调度器的信息,获取所述目标调度器还包括:
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,在所述从目标数据库中获取目标调度器的信息之前,所述方法还包括:
从预置的配置文件中,获取所述目标数据库对应的参数信息;
根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。
优选的,所述应用程序的多个调度器包括:动态调度器;所述动态调度器为,根据用户请求动态生成的调度器。
一种基于Quartz的任务调度装置,所述装置包括:
调度器信息获取单元,用于在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
目标调度器获取单元,用于根据所述目标调度器的信息,获取所述目标调度器;
目标调度器启动单元,用于在获取到所述目标调度器后,启动所述目标调度器。
一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如前述所述的基于Quartz的任务调度方法。
一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行如前述所述的基于Quartz的任务调度方法。
借由上述技术方案,本发明提供的基于Quartz的任务调度方法及装置中,一个应用程序配置有多个调度器,多个调度器的信息均存储在目标数据库中,无需在预置的配置文件中进行预先配置;在应用程序重启时,从目标数据库中获取目标调度器的信息,根据所述目标调度器的信息,获取所述目标调度器,在获取到所述目标调度器后,启动所述目标调度器,从而实现了针对指定调度器的任务重启,提高了任务调度的灵活性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请实施例提供的基于Quartz的任务调度方法的一种流程图;
图2为本申请实施例提供的基于Quartz的任务调度方法的另一种流程图;
图3为本申请实施例提供的基于Quartz的任务调度方法的又一种流程图;
图4为本申请实施例提供的基于Quartz的任务调度方法的再一种流程图;
图5为本申请实施例提供的基于Quartz的任务调度装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
请参阅图1,图1为本申请实施例提供的基于Quartz的任务调度方法的一种流程图。
如图1所示,所述方法包括:
S110:在应用程序重启时,从目标数据库中获取目标调度器的信息。
一个应用程序可以有多个调度器,一个调度器可以有多个触发器,一个任务可以被一个或多个触发器调度,但是,一个触发器只可以绑定一个任务。
调度器、触发器、任务等信息默认都是存储在计算机内存中的,系统重启后这些信息便会丢失,而Quartz提供了将信息持久化到数据库(DB)的方式,而只需在预置的配置文件中配置好相关参数即可。
所述目标数据库中存储有所述应用程序的多个调度器的信息。其中,所述应用程序的多个调度器,可以包括所述应用程序的所有调度器。
所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器。相应的,所述目标调度器的信息包括所述应用程序的多个调度器中的至少一个调度器的信息。
本发明中,针对任一应用程序可配置多个调度器,而不仅仅是针对该应用程序配置一个全局调度器,进而面向该应用程序的不同业务,可以分别采用该应用程序的不同调度器来实现,即,不同的业务对应不同的调度器。
S120:根据所述目标调度器的信息,获取所述目标调度器。
目标调度器是用户指定重启的调度器。根据目标调度器的信息获取到的目标调度器,实际上就是根据目标调度器的信息进行实例化后得到的调度器对象。
一示例中,所述应用程序的多个调度器可包括:动态调度器。
所述动态调度器是指,根据用户请求而动态生成的调度器,而并不是在预置的配置文件中预先配置的调度器。
传统的任务调度方式中,调度器的信息是预先配置在配置文件中的,应用程序重启是,通过解析配置文件中的调度器的信息来获取相应的调度器。但是,应用程序的调度器可能是动态生成的,是不可预知的,所以,对于动态生成的调度器,是没办法预先配置在配置文件中的,那么,在应用程序重启时,是无法获取到这些动态生成的调度器的。
然而,本发明中,由于目标调度器的信息是从目标数据库中获取的,而目标数据库中存储有应用程序的所有调度器的信息,其中就包括动态生成的调度器的信息,所以,本发明可以获取到应用程序的所有调度器的信息,而并不仅仅局限于预先配置在配置文件中的调度器的信息。
S130:在获取到所述目标调度器后,启动所述目标调度器。
通过对指定调度器进行启动,就可以单独针对指定业务的任务进行重启。其中,指定业务的任务可以是指上一次间断执行的任务。
一示例中,在所述从目标数据库中获取目标调度器的信息之前,所述方法还可包括:
从预置的配置文件中,获取所述目标数据库对应的参数信息;根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。其中,所述目标数据库对应的参数可包括目标数据库的地址信息、接口信息等。
本实施例提供的基于Quartz的任务调度方法中,一个应用程序配置有多个调度器,多个调度器的信息均存储在目标数据库中,无需在预置的配置文件中进行预先配置;在应用程序重启时,从目标数据库中获取目标调度器的信息,根据所述目标调度器的信息,获取所述目标调度器,在获取到所述目标调度器后,启动所述目标调度器,从而实现了针对指定调度器的任务重启,提高了任务调度的灵活性。
请参阅图2,图2为本申请实施例提供的基于Quartz的任务调度方法的另一种流程图。
如图2所示,所述方法包括:
S210:在应用程序重启时,获取指定业务。
指定业务是指用户指定要恢复的业务。例如,发生故障而中断的业务。
S220:根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
业务与调度器的信息之间的关联关系,可以预置在业务信息表中。通过读取业务信息表,就可以获取到指定业务关联的调度器的信息,并将其作为目标调度器。
S230:根据所述目标调度器的信息,获取所述目标调度器;
S240:在获取到所述目标调度器后,启动所述目标调度器。
本实施例提供的基于Quartz的任务调度方法,在应用程序重启时,获取指定业务;根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息;根据所述目标调度器的信息,获取所述目标调度器;在获取到所述目标调度器后,启动所述目标调度器,从而能够针对指定业务相关联的调度器进行针对性的启动。
请参阅图3,图3为本申请实施例提供的基于Quartz的任务调度方法的又一种流程图。
如图3所示,所述方法包括:
S310:在应用程序重启时,获取指定特征。
其中,特征可以是指业务特征,也可以是指调度器特征,不同的业务、不同的调度器,可以具有不同的特征,也可以具有相同的特征。
S320:从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
本实施例将指定特征作为调度器信息筛选条件,用于筛选出符合指定特征的调度器的信息,作为目标调度器的信息。
例如,指定业务A与指定业务B是不同的业务,但两者具有相同的特征,则将该相同的特征作为指定特征,这里符合指定特征的调度器,就是指指定业务A对应的调度器与指定业务B对应的调度器,进而将指定业务A对应的调度器与指定业务B对应的调度器,同时作为目标调度器。
也就是说,目标调度器可以包括不同的指定业务分别对应的调度器。
S330:根据所述目标调度器的信息,获取所述目标调度器;
S340:在获取到所述目标调度器后,启动所述目标调度器。
本实施例提供的基于Quartz的任务调度方法,在应用程序重启时,获取指定特征;从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息;根据所述目标调度器的信息,获取所述目标调度器;在获取到所述目标调度器后,启动所述目标调度器,从而能够针对符合所述指定特征的调度器进行针对性启动,进一步提高了任务调度的灵活性。
请参阅图4,图4为本申请实施例提供的基于Quartz的任务调度方法的再一种流程图。
如图4所示,所述方法包括:
S410:在应用程序重启时,从目标数据库中获取目标调度器的信息;
所述目标调度器的信息可包括:目标调度器名称。其中,以目标调度器名称命名的调度器,就是目标调度器。
S420:利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
调度器工厂(schedulerFactory)是Quartz中的调度器工厂类(StdSchedulerFactory)的对象。
S430:判断是否获取成功,若是,执行步骤S450;若否,执行步骤S440。
判断与所述目标调度器名称相匹配的调度器的获取操作是否成功,若是,则执行返回获取到的调度器;若否,则生成以目标调度器名称命名的新的调度器。
S440:生成与所述目标调度器名称相匹配的调度器,作为目标调度器,并执行步骤S450。
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
一示例中,以spring应用为例,S420-S440可通过以下代码来实现:
在实际业务中,调度器是根据不同业务生成的,为了保证可以对不同调度器进行区分,需要将业务与调度器关联起来。例如,基于目标调度器名称来建立调度器与业务之间的关联关系,需要生成以目标调度器名称(指定名称)命名的调度器,而并不能交由Quartz来自动生成其他命名的调度器。
S450:启动目标调度器。
在获取到所述目标调度器后,启动所述目标调度器。
本实施例提供的基于Quartz的任务调度方法,在应用程序重启时,从目标数据库中获取目标调度器名称,利用调度器工厂获取与所述目标调度器名称相匹配的调度器,作为目标调度器;其中,当利用调度器工厂未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器;在获取到所述目标调度器后,启动所述目标调度器,进而实现了指定名称的调度器获取与启动,进一步提高了任务调度的灵活性。
本发明实施例还提供了基于Quartz的任务调度装置,所述基于Quartz的任务调度装置用于实施本发明实施例提供的基于Quartz的任务调度方法,下文描述的基于Quartz的任务调度装置内容,可与上文描述的基于Quartz的任务调度方法内容相互对应参照。
请参阅图5,图5为本申请实施例提供的基于Quartz的任务调度装置的结构示意图。
如图5所示,所述装置包括:
调度器信息获取单元100,用于在应用程序重启时,从目标数据库中获取目标调度器的信息。
其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器。
目标调度器获取单元200,用于根据所述目标调度器的信息,获取所述目标调度器;
目标调度器启动单元300,用于在获取到所述目标调度器后,启动所述目标调度器。
一示例中,所述应用程序的多个调度器包括:动态调度器;所述动态调度器为,根据用户请求动态生成的调度器。
本实施例提供的基于Quartz的任务调度装置中,一个应用程序配置有多个调度器,多个调度器的信息均存储在目标数据库中,无需在预置的配置文件中进行预先配置;在应用程序重启时,从目标数据库中获取目标调度器的信息,根据所述目标调度器的信息,获取所述目标调度器,在获取到所述目标调度器后,启动所述目标调度器,从而实现了针对指定调度器的任务重启,提高了任务调度的灵活性。
其他实施例中,所述调度器信息获取单元100可具体用于:
在应用程序重启时,获取指定业务;
根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
一示例中,所述调度器信息获取单元100还可具体用于:
在应用程序重启时,获取指定特征;
从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
一示例中,所述目标调度器的信息包括目标调度器名称;相应的,所述目标调度器获取单元200具体用于:
利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
所述目标调度器获取单元200还具体用于:
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
一示例中,所述装置还可包括数据库连接单元;所述数据库连接单元用于:
从预置的配置文件中,获取所述目标数据库对应的参数信息;
根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。
本实施例提供的基于Quartz的任务调度装置,能够针对指定业务相关联的调度器进行针对性的启动,也能够针对符合所述指定特征的调度器进行针对性启动,还能实现实现了指定名称的调度器获取与启动,从而进一步提高了任务调度的灵活性。
本发明实施例提供的基于Quartz的任务调度装置,包括处理器和存储器,上述调度器信息获取单元100、目标调度器获取单元200与目标调度器启动单元300、数据库连接单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决基于Quartz的任务调度方案的任务调度灵活性较差的技术问题。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述基于Quartz的任务调度方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述基于Quartz的任务调度方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
根据所述目标调度器的信息,获取所述目标调度器;
在获取到所述目标调度器后,启动所述目标调度器。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定业务;
根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定特征;
从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
优选的,所述目标调度器的信息包括目标调度器名称;所述根据所述目标调度器的信息,获取所述目标调度器包括:
利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,所述根据所述目标调度器的信息,获取所述目标调度器还包括:
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,在所述从目标数据库中获取目标调度器的信息之前,所述方法还包括:
从预置的配置文件中,获取所述目标数据库对应的参数信息;
根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。
优选的,所述应用程序的多个调度器包括:动态调度器;所述动态调度器为,根据用户请求动态生成的调度器。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
根据所述目标调度器的信息,获取所述目标调度器;
在获取到所述目标调度器后,启动所述目标调度器。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定业务;
根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
优选的,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定特征;
从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
优选的,所述目标调度器的信息包括目标调度器名称;所述根据所述目标调度器的信息,获取所述目标调度器包括:
利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,所述根据所述目标调度器的信息,获取所述目标调度器还包括:
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
优选的,在所述从目标数据库中获取目标调度器的信息之前,所述方法还包括:
从预置的配置文件中,获取所述目标数据库对应的参数信息;
根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。
优选的,所述应用程序的多个调度器包括:动态调度器;所述动态调度器为,根据用户请求动态生成的调度器。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于Quartz的任务调度方法,其特征在于,所述方法包括:
在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
根据所述目标调度器的信息,获取所述目标调度器;
在获取到所述目标调度器后,启动所述目标调度器。
2.如权利要求1所述的方法,其特征在于,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定业务;
根据预置的业务与调度器的信息之间的关联关系,从所述目标数据库中获取与所述指定业务相关联的调度器的信息,作为目标调度器的信息。
3.如权利要求1所述的方法,其特征在于,所述在应用程序重启时,从目标数据库中获取目标调度器的信息包括:
在应用程序重启时,获取指定特征;
从所述目标数据库中,获取符合所述指定特征的调度器的信息,作为目标调度器的信息。
4.如权利要求1所述的方法,其特征在于,所述目标调度器的信息包括目标调度器名称;所述根据所述目标调度器的信息,获取所述目标调度器包括:
利用调度器工厂,获取与所述目标调度器名称相匹配的调度器,作为目标调度器。
5.如权利要求4所述的方法,其特征在于,所述根据所述目标调度器的信息,获取所述目标调度器还包括:
当利用调度器工厂,未获取到与所述目标调度器名称相匹配的调度器时,生成与所述目标调度器名称相匹配的调度器,作为目标调度器。
6.如权利要求1所述的方法,其特征在于,在所述从目标数据库中获取目标调度器的信息之前,所述方法还包括:
从预置的配置文件中,获取所述目标数据库对应的参数信息;
根据所述目标数据库对应的参数信息,建立与所述目标数据库之间的数据连接。
7.如权利要求1所述的方法,其特征在于,所述应用程序的多个调度器包括:动态调度器;所述动态调度器为,根据用户请求动态生成的调度器。
8.一种基于Quartz的任务调度装置,其特征在于,所述装置包括:
调度器信息获取单元,用于在应用程序重启时,从目标数据库中获取目标调度器的信息;其中,所述目标数据库中存储有所述应用程序的多个调度器的信息;所述目标调度器包括所述应用程序的多个调度器中的至少一个调度器;
目标调度器获取单元,用于根据所述目标调度器的信息,获取所述目标调度器;
目标调度器启动单元,用于在获取到所述目标调度器后,启动所述目标调度器。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如权利要求1~7中任一项所述的基于Quartz的任务调度方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行如权利要求1~7中任一项所述的基于Quartz的任务调度方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811136748.9A CN110968401A (zh) | 2018-09-28 | 2018-09-28 | 基于Quartz的任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811136748.9A CN110968401A (zh) | 2018-09-28 | 2018-09-28 | 基于Quartz的任务调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110968401A true CN110968401A (zh) | 2020-04-07 |
Family
ID=70026695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811136748.9A Pending CN110968401A (zh) | 2018-09-28 | 2018-09-28 | 基于Quartz的任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110968401A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061797A (zh) * | 2022-06-20 | 2022-09-16 | 广州市玄武无线科技股份有限公司 | 一种Quartz组件的调用方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004029805A2 (en) * | 2002-09-30 | 2004-04-08 | International Business Machines Corporation | A common scheduler web service for distributed network environments |
WO2009148738A2 (en) * | 2008-06-02 | 2009-12-10 | Microsoft Corporation | Scheduler instances in a process |
US20100179957A1 (en) * | 2009-01-09 | 2010-07-15 | Linkage Technology Group Co., Ltd. | Polling Method of Switch Status Based on Timer-triggered Scheduler of Stored Procedures |
CN106293971A (zh) * | 2016-08-15 | 2017-01-04 | 张家林 | 一种分布式任务调度的方法和装置 |
CN106775985A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 一种批处理任务调度方法及装置 |
CN107085605A (zh) * | 2017-04-12 | 2017-08-22 | 泰康保险集团股份有限公司 | 用于数据打包的方法、装置及电子设备 |
CN108139926A (zh) * | 2015-07-30 | 2018-06-08 | 纳斯达克公司 | 后台作业处理框架 |
-
2018
- 2018-09-28 CN CN201811136748.9A patent/CN110968401A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004029805A2 (en) * | 2002-09-30 | 2004-04-08 | International Business Machines Corporation | A common scheduler web service for distributed network environments |
WO2009148738A2 (en) * | 2008-06-02 | 2009-12-10 | Microsoft Corporation | Scheduler instances in a process |
US20100179957A1 (en) * | 2009-01-09 | 2010-07-15 | Linkage Technology Group Co., Ltd. | Polling Method of Switch Status Based on Timer-triggered Scheduler of Stored Procedures |
CN108139926A (zh) * | 2015-07-30 | 2018-06-08 | 纳斯达克公司 | 后台作业处理框架 |
CN106293971A (zh) * | 2016-08-15 | 2017-01-04 | 张家林 | 一种分布式任务调度的方法和装置 |
CN106775985A (zh) * | 2016-12-26 | 2017-05-31 | 中国建设银行股份有限公司 | 一种批处理任务调度方法及装置 |
CN107085605A (zh) * | 2017-04-12 | 2017-08-22 | 泰康保险集团股份有限公司 | 用于数据打包的方法、装置及电子设备 |
Non-Patent Citations (3)
Title |
---|
WYGCOOL: "Quartz-2.2.x-Documentation", 《HTTPS://WWW.DOCIN.COM/P-1205728629.HTML》 * |
温浩宇: "《商务网站设计与开发》", 31 December 2016, 西安电子科技大学出版社 * |
青岛英谷教育科技股份有限公司: "《轻量级Java EE程序设计及实践》", 31 August 2015, 西安电子科技大学出版社 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115061797A (zh) * | 2022-06-20 | 2022-09-16 | 广州市玄武无线科技股份有限公司 | 一种Quartz组件的调用方法及装置 |
CN115061797B (zh) * | 2022-06-20 | 2023-05-30 | 广州市玄武无线科技股份有限公司 | 一种Quartz组件的调用方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9715402B2 (en) | Dynamic code deployment and versioning | |
CN105335187B (zh) | 一种应用的处理方法及装置 | |
CN113037794B (zh) | 计算资源配置调度方法、装置及系统 | |
CN108322490B (zh) | 虚拟机配置及部署分布式云服务系统的方法、装置和服务器 | |
CN110223682B (zh) | 一种语音指令仲裁方法和装置 | |
CN113220431B (zh) | 跨云的分布式数据任务调度方法、设备及存储介质 | |
US9921882B2 (en) | Information processing system, deployment method, processing device, and deployment device | |
CN108845876B (zh) | 一种业务分配的方法及装置 | |
CN111984280B (zh) | 容器兼容、升级方法、装置、设备及存储介质 | |
CN111475142A (zh) | 一种小程序文件包的生成方法、装置及设备 | |
CN113448728B (zh) | 一种云资源调度方法、装置、设备及存储介质 | |
US20180084056A1 (en) | Systems and methods for sharing application data between isolated applications executing on one or more application platforms | |
CN115328529B (zh) | 应用管理方法及相关设备 | |
CN110716813A (zh) | 数据流处理方法、装置、可读存储介质及处理器 | |
CN111126733A (zh) | 爬取任务的分配方法及装置 | |
CN110046100B (zh) | 一种分组测试的方法、电子设备及介质 | |
CN109977317B (zh) | 数据查询方法及装置 | |
CN111580948A (zh) | 任务调度方法、装置及计算机设备 | |
CN110968401A (zh) | 基于Quartz的任务调度方法及装置 | |
CN107025126B (zh) | 一种资源调度方法、nfvo和系统 | |
CN110968406B (zh) | 处理任务的方法、装置、存储介质和处理器 | |
CN109582396B (zh) | 一种任务状态处理方法、装置、系统及存储介质 | |
CN112579308A (zh) | 任务处理方法及系统 | |
CN114168712A (zh) | 制造业加工文件的推送方法、装置、存储介质及处理器 | |
CN110737533A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200407 |
|
RJ01 | Rejection of invention patent application after publication |