J'utilise
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
scheduler = schedulerFactory.getScheduler();
scheduler.start();
Trigger asapTrigger = getAsapTrigger();
JobDetail asapJob = getAsapJobDetails();
scheduler.scheduleJob(asapJob, asapTrigger);
Cela fonctionne, mais lorsque je choisis un environnement de cluster, 2 threads s'exécutent pour le même travail.
J'utilise des annotations et non un fichier de propriétés. Je veux exécuter un seul thread. Quelqu'un peut-il m'aider à ce sujet. Comment configurer?
mon code ressemble presque à: http://k2Java.blogspot.com/2011/04/quartz.html
Vous devez configurer Quartz pour qu'il s'exécute dans un environnement en cluster. Le clustering ne fonctionne actuellement qu'avec le magasin de travaux JDBC et fonctionne en ayant chaque nœud du cluster pour partager la même base de données.
Veuillez noter que chaque instance du cluster doit utiliser la même copie du fichier quartz.properties. De plus, si vous utilisez le clustering sur des machines distinctes, assurez-vous que leurs horloges sont synchronisées.
Pour plus d'informations, consultez la documentation officielle qui contient un exemple de fichier de propriétés pour un planificateur en cluster.