Quartz学
Quartz特点
1) Quartz能嵌入到任何独立的应用中运行。
2) Quartz能在应用服务器或者 Servlet 容器中实例化,并且能够参与 XA 事务。
3) Quartz能够以独立的方式运行(在它自己的Java虚拟机中),可以通过 RMI使用
Quartz。
4) Quartz可以被实例化为独立程序的集群(有负载均衡和容错能力)。
Quartz功能介绍
任务执行(Job Execution)
任务是任何实现简单 Job 接口的 Java 类,这样开发者能够执行任何完成他们工作
的任务。
任务类的实例可以由 Quartz实例化,也可以由你的程序框架实例化。
当触发器被触发时,日程管理器将会通知某个或者多个实现了JobListener 或
TriggerListener的对象(监听器可以是简单的Java对象,或者 EJBs,或者 JMS 消息发布器,等等)。这些监听器在任务执行完毕后也会接到通知。
任务被完成后,他们会返回一个“任务完成码(pletionCode)”,这个
“任务完成码”告知日程管理器任务执行的结果是成功还是失败。日程管理器会根据成功或者失败码来采取措施,比如:立即重新执行任务
任务持久化(Job Persistence)
Quartz设计中包括了一个JobStore接口,这样,实现这个接口的 Job多种机制实现Job 的存储。
存储在数据库中:通过使用 JDBCJobStore,所有的 Jobs和 Triggers 被配置为“non-volatile”(不
轻快)的方式。即,通过 JDBC 存储在关系数据库中。
存储在RAM中:通过使用 RAMJobStore,所有Jobs和 Triggers 被存储在 RAM。因此,在程序执行中没有被持久化,但这种方式的优点就是不需要外部数据库。
事务(Transactions)
Quartz通过JobStoreCMT(JDBCJobStore的一个子类)可参与 JTA 事务。
Quartz可以管理JTA (工作任务分析)事务(开始或者提交事务)。
集群(Clustering)
Fail-over.(容错)
Load balancing.(负载均衡)
监听器及插件(Listeners & Plug-Ins)
应用可以通过实现一个或者多个监听器接口来实现捕捉日程事件,以监视或控制任务/触发器的行为。
可以通过插件的机制来扩展 Quartz 的功能。例如:记录任务执行历史的日志,或者从文件中载入任务和触发器的定义。
Quartz自带了一些“factory built(内建)”的插件和监听器。
什么是Quartz
Quartz是一个任务日程管理系统,这个系统可以与任何其他软件系统集成或者一起
用。“任务进度管理器”就是一个在预先确定(被纳入日程)的时间到达时,负责执行(或者通知)其他软件组件的系统。
Quartz相当“轻量”,并且需要非常少的步骤/配置,如果需求比较基本,Quartz确实非常容易使用。
Quartz具有容错性,并且可以在你系统重起的时候持久化(记住)被纳入日程的任务。
Quartz用一个小Java库发布文件(.jar文件),这个库文件包含了所有 Quartz核心功能。这些功能的主要接
Quartz学习笔记 来自淘豆网m.daumloan.com转载请标明出处.