http://www.quartz-scheduler.org/html
What is the Quartz Job Scheduling Library?app
Quartz is a richly featured, open source job scheduling library that can be integrated within virtually any Java application - from the smallest stand-alone application to the largest e-commerce system. Quartz can be used to create simple or complex schedules for executing tens, hundreds, or even tens-of-thousands of jobs; jobs whose tasks are defined as standard Java components that may execute virtually anything you may program them to do. The Quartz Scheduler includes many enterprise-class features, such as support for JTA transactions and clustering.分佈式
org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTXui
org.quartz.jobStore.isClustered=truecomponent
QuartzScheduler.starthtm
QuartzSchedulerResources.getJobStoreblog
StdSchedulerFactory.instantiate (org.quartz.jobStore.class)get
JobStoreSupport.setLockHandler (org.quartz.jobStore.lockHandler.class)it
JobStoreSupport.initializeio
setLockHandler (StdRowLockSemaphore)
JobStoreSupport.schedulerStarted
ClusterManager.initialize
run
manage
doCheckin
clusterCheckIn
Semaphore.obtainLock
StdRowLockSemaphore.executeSQL (select for update and insert)
clusterRecover
signalSchedulingChangeImmediately
SchedulerSignaler.signalSchedulingChange
QuartzSchedulerThread.signalSchedulingChange
QuartzSchedulerThread.run
JobStore.acquireNextTriggers
JobStore.triggersFired