2013-06-12 106 views
1

我們有2個應用程序使用石英進行調度。我們的應用程序的quartz.properties如下:在同一個服務器實例和同一個作業庫上的多個Quartz實例

org.quartz.scheduler.instanceName = sr22QuartzScheduler 
org.quartz.scheduler.instanceId = AUTO 
org.quartz.scheduler.skipUpdateCheck = true 

org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool 
org.quartz.threadPool.threadCount = 2 
org.quartz.threadPool.threadPriority = 5 

org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX 
org.quartz.jobStore.isClustered = true 
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate 
org.quartz.jobStore.useProperties = false 
org.quartz.jobStore.dataSource = quartzDS 
org.quartz.jobStore.tablePrefix = QRTZ_ 
org.quartz.jobStore.clusterCheckinInterval = 20000 
org.quartz.scheduler.idleWaitTime=1000 
#org.quartz.jobStore.acquireTriggersWithinLock=true 
#Adding unusually high misfire threshold as we dont want to handle misfires 
org.quartz.jobStore.misfireThreshold = 50000000 
#org.quartz.jobStore.maxMisfiresToHandleAtATime = 0 

org.quartz.dataSource.quartzDS.jndiURL= java:jdbc/quartzDS 

org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.ShutdownHookPlugin 
org.quartz.plugin.shutdownhook.cleanShutdown = false 

#org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingTriggerHistoryPlugin 
#org.quartz.plugin.triggHistory.triggerFiredMessage = Trigger \{1\}.\{0\} fired job \{6\}.\{5\} at: \{4, date, HH:mm:ss MM/dd/yyyy} 
#org.quartz.plugin.triggHistory.triggerCompleteMessage = Trigger \{1\}.\{0\} completed firing job \{6\}.\{5\} at \{4, date, HH:mm:ss MM/dd/yyyy\} 

其他應用程序具有相同的配置,但具有不同的實例名。

這兩個應用程序都將在同一組服務器實例上運行。它們都使用與數據庫中的Quartz Job存儲相同的一組表。

現在的問題是:

如果這兩個應用程序的同時運行時,觸發沒有正確路由。來自application1的觸發器被路由到application2,反之亦然。這是隨機發生的。

應用程序應該在同一個數據庫中使用不同的quatrz表集合嗎?我們應該爲每個服務器只有一個石英調度器實例用於多個應用程序?

我看到石英的隨機行爲。我們的設置有什麼問題嗎?

順便說一句,我們正在使用石英1.8。

任何幫助表示讚賞。

謝謝, Sri Harsha Yenuganti。

回答

0

夸脫2.0及以上版本支持此功能。

1
"The other application have the same configuration but with a different instanceName." 

要啓用聚類:

  • 使用僅一個SINGLE調度實例名稱(但具有不同的實例ID)

  • 點到單個組表

相關問題