Пара вопросов о весеннем кварце


Я подумываю о том, чтобы встроить spring quartz в мое веб-приложение spring mvc. У меня есть несколько вопросов по этому поводу, на которые я не смог должным образом найти ответ.

  1. Если я хочу использовать триггеры cron для spring quartz, выполняет ли quartz задание, используя системное время java или время операционной системы?
  2. я планирую иметь файл свойств для хранения всех моих триггеров cron. Если кто-то пойдет и изменит триггер cron для выполнения задания ad-hoc, quartz автоматически поднимет его изменения в файле? Или есть способ для меня сказать кварцу, как это сделать, если это не поведение по умолчанию.
  3. я недавно читал о spring batch admin console. Звучит как хороший графический инструмент для перепланировки заданий. Можно ли использовать его для внесения специальных изменений в триггеры crontab? Или есть другой графический инструмент, который я мог бы использовать для управления триггерами заданий?

Заранее спасибо

1 3

1 ответ:

Кварц

  1. Quartz использует пользовательский планировщик потоков (org.quartz.core.QuartzScheduler), который использует системное время java. Он может интегрировать интерфейс commonj, чтобы быть JEE (WAS и Weblogic) совместимым.
  2. конфигурация перезагрузки: прочитайте Quartz: Как перезагрузить задания и триггеры с помощью org.кварцевый.подключаемый модуль.XML.XMLSchedulingDataProcessorPlugin?
  3. консоль администратора Spring batch предназначена для spring batch и предназначена для мониторинга активности пакетов

Перезагрузить конфигурацию с помощью API

Вообще говоря вы можете использоватьquartz API программно (я использую их):

    JobDetail job = new JobDetail();
    job.setName("myJob");
    job.setJobClass(MyJob.class);

    CronTrigger trigger = new CronTrigger();
    trigger.setName("myTriggerName");
    trigger.setCronExpression("0/30 * * * * ?");


    Scheduler scheduler = new StdSchedulerFactory().getScheduler();
    scheduler.start();
    scheduler.scheduleJob(job, trigger);

Эти API обеспечивают вам прекрасный контроль.

Перезагрузка конфигурации JMX way

Вы можете управлять планировщиком Qurtz через RemoteMBeanScheduler:

Реализация интерфейса планировщика, который удаленно проксирует все вызовы метода к эквивалентному вызову на данном экземпляре QuartzScheduler, через JMX.