一起了解Quartz开源作业调度框架基本概念

with 1 comment

Quartz是一个完全由JAVA编写的开源作业调度框架,为作业调度提供了简单却强大的机制,可以与程序结合也可以独立使用,一起来了解一下。

Quartz1.jpg

Quartz概述

Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,一个完全由JAVA编写的开源作业调度框架。
Quartz可以与J2EE与J2SE应用程序相结合也可以单独使用。
Quartz可以用来创建简单或为运行十个、百个、万个Jobs这样复杂的程序。
Jobs可以做成标准的Java组件或JavaBean。
千万不要让作业调度这个术语吓着你。
Quartz框架虽然整合了许多额外功能,但它易用程度简直令人惊叹!

Quartz核心

Quartz框架大约有300个JAVA类和接口,并被组织到12个包中。
这虽与一个Web应用框架的规模类似,但不要惊慌。
Quartz框架的核心是调度器。
调度器负责管理Quartz应用运行时环境。
Quartz框架采用了基于多线程的架构,启动时,框架初始化一套worker线程。
这套线程被调度器用来执行预定的作业,因此Quartz可以并发运行多个作业。
Quartz依赖一套松耦合的线程池管理部件来管理线程环境。

Quartz核心类

上文提到Quartz框架有300多个类,这其中因为集成了众多实用的功能。
如果我们想快速的应用Quartz框架达成作业调度的能力,我们只需要了解几个核心类。
我们需要明白 Quartz 的几个核心概念,这样理解起 Quartz 的原理就会变得简单了。

Job

此接口中只有一个方法。
void execute(JobExecutionContext context)
我们需要完成的具体工作只需要实现Job接口即可。

JobDetail

上文中的Job是这个可执行程调度程序所要执行的具体内容。
JobDetail还包含了这个工作调度的具体方案和策略。

Trigger

Scheduler

一个调度容器中可以注册多个JobDetail和Trigger。
当Trigger与JobDetail组合起来,就可以被Scheduler容器调度。

我们把上述的内容白话一下举一个例子:

Responses
  1. 谢谢分享 ,会一直关注博主的,内容很赞

    Reply