You know that this book is about Quartz, but what about alternatives to the Quartz framework? Other approaches are often mentioned when comparing job scheduling solutions, so it's worth while to briefly mention them.
Java SDK Timer and TimerTask Classes
The java.util.Timer and java.util.TimerTask classes were added to the Java SDK in Version 1.3. These new classes are ideal as the basis of a scheduler, but they are only a fraction of what is needed with a complete jobscheduling framework. Any serious jobscheduling framework has functionality for selecting the execution time, storing job information in various places, and using hooks for customization, just to name a few. Two classes in the Java SDK don't make a job scheduler: The Java Timer has no way to organize jobs and triggers, uses one thread per task instead of a pool of threads, and has several other deficiencies that keep it from performing as a full job scheduler.
HomeGrown solution
As with the Timer and TimerTask classes just mentioned, it's easy to underestimate the effort involved in creating a flexible and featurerich job scheduler. Creating a job scheduler is not a trivial task, either. It requires expertise in not only Java threads, but many other complicated topics as well. Job scheduling is not something to build from scratch if it's not your specialty.
Commercial Solutions
Quite a few commercial job schedulers are available on the market. We make no attempt in this book to review or evaluate these commercial solutions. Table 1.1 lists several of the more popular solutions and URLs where you can get more information.
Name |
URL |
---|---|
Flux Scheduler |
www.fluxcorp.com/ |
Enterprise Batching Queuing |
www.argent.com/p/qe/qe.html |
Unicenter AutoSys Job Management 4.5 |
www.ca.com |
BMC Software ControlM |
www.bmc.com |
Cybermation ESP Espresso 4.2 |
www.cybermation.corly;9'm |
Vexus consulting Avatar Job Scheduling Suite 4.5.5 |
www.vexus.ca |
Argent software The Argent Job Scheduler 4.5A |
www.argent.com |
Tidal Enterprise Scheduler |
www.tidalsoftware.com |
Scheduling in the Enterprise
Getting Started with Quartz
Hello, Quartz
Scheduling Jobs
Cron Triggers and More
JobStores and Persistence
Implementing Quartz Listeners
Using Quartz Plug-Ins
Using Quartz Remotely
Using Quartz with J2EE
Clustering Quartz
Quartz Cookbook
Quartz and Web Applications
Using Quartz with Workflow
Appendix A. Quartz Configuration Reference