Ho un setup Quartz con più istanze e voglio interrompere un lavoro ovunque venga eseguito. Come è stato detto nella documentazione, il metodo Scheduler.interrupt()
non è a conoscenza del cluster, quindi sto cercando una pratica comune per superare tale limite.Interruzione di un lavoro nel cluster di quarzo
risposta
Bene, ecco alcuni principi fondamentali che è necessario utilizzare per ottenere ciò.
Quando si esegue in modalità cluster, le informazioni sui lavori attualmente in esecuzione sono disponibili nelle tabelle del quarzo. Ad esempio, lo q_fired_triggers
contiene il lavoro che si sta eseguendo. La prima colonna di questa tabella è il nome dello scheduler che ne è responsabile. Quindi è abbastanza facile sapere chi sta facendo cosa.
Quindi, se si abilita l'esportazione JMX delle istanze di quarzo org.quartz.scheduler.jmx.export
, gli MBeans abiliteranno un nuovo punto di ingresso per la gestione remota di ogni singolo programma di pianificazione. Il MBean fornisce un metodo boolean interruptJob("JobName", "JobGroup")
Poi "solo" necessità di chiamare questo metodo per l'istanza di pianificazione appropriata per interrompere efficacemente.
Ho provato tutto il processo manualmente e funziona bene, basta essere automatizzata :)
HIH
- 1. integrazione molla + cron + quarzo nel cluster?
- 2. Esecuzione di un lavoro al quarzo mancante
- 3. Java: creazione di un flusso di lavoro in quarzo
- 4. Aggiungi più trigger di lavoro quarzo singolo
- 5. Pianificazione lavoro: EJB 3.1 Timer o quarzo?
- 6. È possibile uccidere un lavoro al quarzo in corso?
- 7. quando un lavoro al quarzo si attiva, è una nuova istanza della classe di lavoro?
- 8. come iniettare il lavoro di quarzo con ninject?
- 9. Il quarzo non riesce a cancellare un lavoro, e adesso?
- 10. Fallimento dei nodi di rilevamento del quarzo
- 11. Quarzo: perdita di memoria?
- 12. Cluster di cluster Networkx
- 13. problema Esecuzione Spark lavoro su cluster Yarn
- 14. Utilizzo del quarzo per pianificare un singolo lavoro su più server di app stateless
- 15. quarzo org.quartz.jobStore.selectWithLockSQL fila blocco
- 16. Quarzo Scheduler - grilletto non fa riferimento determinato lavoro
- 17. Come funziona un programmatore di lavoro come il quarzo quando si hanno più server?
- 18. Alternative al quarzo per la pianificazione del lavoro
- 19. Esempio Java: pianificazione dinamica del lavoro con quarzo
- 20. Lavoro al quarzo in un'applicazione Grails attivata tre volte
- 21. elimina trigger in quarzo
- 22. Inserire una interruzione di riga nel titolo
- 23. Utilizzo di PersistenceContext in un processo al quarzo
- 24. Monitorare un cluster di nodi
- 25. Interruzione di riga nel mailto onclick
- 26. knp_snappy interruzione di pagina nel PDF generato
- 27. quarzo scheduler max proprietà numero di thread
- 28. Topshelf deve utilizzare la fabbrica di lavoro al quarzo di Autofac
- 29. Quarzo: attivazione di più lavori
- 30. quarzo jobDetail requestRecovery