我正在研究使用Quartz來調度作業的應用程序。要安排的作業是通過讀取屬性文件以編程方式創建的。我的問題是:如果我有幾個節點的集羣這些應該創建時間表編程?其中只有一個?或者,也許所有?集羣石英調度程序配置
0
A
回答
1
我在一個網絡應用程序中使用石英,其中用戶可以創建執行特定任務的石英工作。
我們對該應用程序沒有任何問題,前提是至少每個作業的作業名稱不同。你也可以有不同的組名,如果我沒記錯的話,jobgroup + jobname組合形成一個工作鍵。
無論如何,我們在創建一個來自不同節點的作業時沒有問題,但當時的石英(大約6個月前,我不相信這已經改變,但我不確定)沒有提供停止集羣中的作業,它只能停止執行停止命令的節點上的作業。
如果您只是想在應用程序啓動時創建固定數量的作業,則最好將該作業委託給其中一個節點,因爲將從每個節點的相同屬性文件讀取作業名稱/組,並且衝突將會出現。
0
你有沒有試過在它們上面創建它們?我想你會因爲重複的名字而發生衝突。 所以我認爲其中一個成員應該在啓動過程中創建時間表。
0
如果集羣中的預定義屬性像您說的那樣,那麼您應該只有一個系統爲該集羣安排作業。如果所有系統都這樣做了,那麼如果每臺服務器都創建或刪除了相同的作業和觸發器,則可能會不必要地重新創建作業,並且可能會將其置於奇怪的狀態。
您只需將作業的屬性部署到一臺服務器,然後只有一臺服務器會嘗試創建它們。
您可以製作一個單獨的應用程序,其目的是安排作業並只運行一次。
如果這些是Web服務器,您可以製作一個簡單安全的REST API來觸發調度過程。然後,您可以編寫一個自動腳本來訪問該API,並啓動作爲部署的一部分或任何其他需要的時間安排作業。如果負載平衡器後面有多個服務器,則應該只有一臺服務器,並計劃將石英保存到數據庫支持的作業庫的作業。羣集中的其他節點將在下一次從數據庫更新時接收它們。
相關問題
- 1. 石英集羣調度THREADCOUNT
- 2. 帶配置調度程序的石英
- 3. 石英調度程序集羣時間同步
- 4. 石英調度程序vs設置cron
- 5. 石英調度程序的設置 - Mule
- 6. 石英調度程序theadpool
- 7. grails石英調度程序
- 8. 石英調度程序cron
- 9. 石英調度程序 -
- 10. 石英調度程序
- 11. 石英集羣:所有節點上都可見的調度程序動作
- 12. 石英調度程序和線程
- 13. 關於對羣集和非羣集調度程序使用同一組石英錶
- 14. jboss接縫+石英調度器2.2.1 +集羣
- 15. 石英調度
- 16. 石英調度程序丟失作業
- 17. python企業調度程序(如石英)
- 18. 石英:調度程序已關閉
- 19. 石英調度程序作業遷移
- 20. 石英調度程序中斷作業?
- 21. 關機石英調度程序
- 22. 停止單石英調度程序
- 23. 石英調度程序實例爲空
- 24. 石英調度程序 - Cron未運行
- 25. 石英與Java EE 7調度程序
- 26. getJobNames()在石英調度程序2.2.1
- 27. 石英調度程序-HELP需要
- 28. 石英調度程序如何工作?
- 29. Grails集羣石英工作示例代碼和配置所需
- 30. 羣集配置中石英的奇怪行爲