2012-04-28 144 views
1

我在JBoss 5.0.1 GA上運行Spring 3.1 MVC Web應用程序。我沒有使用註釋。在jboss 5.0.1上運行spring任務調度程序的多任務調用GA

我有一個singeton,有一個方法,我希望計劃在一天中的某個時間運行。

我有我的任務調度配置如下:

<task:scheduler id="taskScheduler"/> 
<task:scheduled-tasks scheduler="taskScheduler"> 
    <task:scheduled ref="service" method="DoSomething" cron="* */10 * * * *"/> 
</task:scheduled-tasks> 
<task:executor id="taskExecutor" pool-size="1"/> 

然而,當我觀察跟蹤日誌,正在執行的方法多次(我們的QA服務器和督促服務器上的8倍),而不是僅僅一次。

QuartzScheduler是否需要以某種方式進行配置?

感謝,

回答

0

我懷疑的cron "* */10 * * * *"元素是不正確的值。

我不能http://www.quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger

/找到*/10的文檔從值,其中作爲*代表所有值,以便*/10在幾分鐘無厘頭引入了增量。

+0

http://static.springsource.org/spring/docs/3.0.0.M3/api/org/springframework/scheduling/support/CronSequenceGenerator.html 這是每10分鐘的順序。 – Eric 2012-04-28 04:26:55

+0

除了cron序列的格式不是問題。按預期每10分鐘執行一次。正如我上面提到的,問題不是問題是在預定時間執行的次數。 – Eric 2012-04-28 04:42:00

+0

我現在明白了。道歉。 – 2012-04-28 11:10:00

0

它看起來對我來說,在cron中的第一個*應爲0,0秒給0 */10 * * * *意味着每10分鐘一班,而不是每10分鐘運行一次秒(這將取決於如何運行多次需要花費很長時間才能完成每個調用。要獲得8個調用,單次運行只需超過一分鐘)。請注意0​​示例如何以零開始。