Java Developers Desk

Continuous growth of the modern systems always demand the refinements of the respective underlying components. One such requirement for Java applications is of Job scheduling. Java applications depending on the tasks that needs to be performed at specific times (or requires recurring maintenance jobs) are highly benefited with Quartz. Quartz is a fully-featured open source job scheduling framework. It helps to automate scheduling issues within a system and offers an extensive set of multiple job scheduling features.

What is Quartz?

Quartz is a fully featured, an open source job scheduling system that can be integrated with (or used along with) any JSE and JEE applications i.e. from the smallest stand-alone application to the largest e-commerce system. Quartz can be used to reate simple as well as the complex schedules (for executing tens, hundreds, or even thousands of jobs, whose tasks can be defined as standard Java components or EJBs). The Quartz Scheduler provides many enterprise-class features, such as JTA transactions and clustering.

Quartz is an open source job scheduling framework that provides simple but powerful mechanisms for job scheduling. It schedules jobs to occur for a specific time or at a specific time interval. It implements many-to-many relationships for jobs and can associate them with different triggers. Quartz can be configured through a property file (in which you can specify a data source for JDBC transactions, global job and/or trigger listeners, plug-ins, thread pools, and more) Quartz provides a simple Java API, written entirely in Java, that allows you to schedule, monitor, and execute the jobs directly from your upstream application.

Few Features:

• Ability to run in different runtime environments like application servers, web containers, clusters of standalone programs, etc.
• Ability to schedule tasks for a specific time or at a specific time interval. Even, you can block tasks for a specific time.
• Allows to organize triggers as groups in the scheduler.
• Allows to associate multiple jobs with the same trigger.
• Includes event handlers to demarcate start and finish
points of a triggered job.
• Allows configuration to automatically re-trigger a job if it
• Allows to configure jobs to participate in JTA transactions.
• Allows to store jobs and triggers in a database, file, or
cache them in memory.
• Supports fail-over and load balancing.
• Provides listener support to monitor scheduled jobs from
any application.


Who is using Quartz?

Quartz is in use by thousands of people, many of whom have
directly embedded Quartz in their own applications, and others who are using products that already have Quartz embedded within them. Here is a list of just a few of the hundreds of Quartz users:

• Vodafone Ireland - uses Quartz for scheduling tests to
be carried out on systems in order to generate quality of
service information.
• Covalent Technologies, Inc. - uses Quartz within their
CAM product to handle anything scheduling related in
the system, such as: scheduling server actions (start,
restart, etc.), metric calculations, data cleanup daemons,
• PartNET Inc. - uses Quartz for scheduling application
events and driving workflows within many of its products.
• U.S. Department of Defence - uses Quartz at various
points within a large electronic commerce application,
noteably order fulfillment.
• Level3 Communications - uses Quartz to drive
software builds and deployments.
• Atlassian - uses Quartz within their excellent JIRA and
Confluence products.
• Cisco - uses Quartz in various in-house systems.
• Apache Jakarta - Quartz is used within (or as plugins
to) several products falling under the Jakarta umbrella.
• OpenSymphony - Uses Quartz to drive the OS
Workflow product.
• Spring - Quartz is used within the Spring Framework.
• XpoLog - uses Quartz within XpoLog Center in order to
enable automatic technical support.
• Bloombase Technologies - has integrating Quartz
within their Spitfire EAI Server for XML security processing.
• Thomson Tax and Accounting - uses Quartz in its job
scheduling framework within it’s editorial systems
• The Liferay Portal - is using the Quartz Scheduler.
Just download and check the code. Liferay Inc. Portal.
• Infoglue CMS - from
• Apache Cocoon - uses Quartz to provide scheduling
features and to run application background processes.
• JBoss - uses Quartz for the implementation of a number
of services within its infrastructure.

August 2007 | Java Jazz Up | 9
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40           Download PDF