#jboss #scheduler #jboss-4.0.x
#jboss #планировщик #jboss-4.0.x
Вопрос:
Я пытаюсь определить два планировщика в jboss-service.xml
. Один планировщик запускается часто и занимает короткое время для выполнения. Другой планировщик запускается один раз в день, но для его выполнения требуется значительное количество времени. Ниже приводится выдержка из моего jboss-service.xml
:
<!-- Frequent, fast -->
<mbean code="org.jboss.varia.scheduler.Scheduler"
name=":service=FrequentSchedule,schedule=frequent">
<attribute name="InitialStartDate">NOW</attribute>
<attribute name="SchedulePeriod">5000</attribute>
<!-- Other attributes... -->
</mbean>
<!-- Infrequent, slow -->
<mbean code="org.jboss.varia.scheduler.Scheduler"
name=":service=InfrequentSchedule,schedule=infrequent">
<attribute name="InitialStartDate">0</attribute>
<attribute name="SchedulePeriod">86400000</attribute>
<!-- Other attributes... -->
</mbean>
Результатом этой конфигурации является то, что частый планировщик выполняется с ожидаемой частотой до тех пор, пока не придет время запускать планировщик длительного выполнения. На этом этапе частое расписание больше не выполняется до завершения долгосрочного расписания. Из Javadocs из org.jboss.varia.scheduler.Scheduler
:
ВНИМАНИЕ: Экземпляр планировщика позволяет запускать только одно расписание одновременно. Поэтому, когда вы хотите запустить два расписания, создайте экземпляры to с этим MBean. Рекомендуемое имя объекта для MBean: :service=Scheduler,расписание =
Я пытался следовать этому совету, но это не сработало. Если у кого-нибудь есть опыт в параллельном запуске нескольких планировщиков в JBoss 4.0.5.GA любая помощь будет высоко оценена.
Комментарии:
1. Вам будет трудно получить ответ на этот вопрос. Большинство пользователей SO все еще ходили в школу, когда был выпущен JBoss 4.0 (без преувеличения, ему около 7 лет).
2. Ах, радости работы со старой технологией…
Ответ №1:
Решаемая проблема, добавление этого атрибута в mbean
<attribute name="TimerName">jboss:service=TimerNew</attribute>
Как объясняется в JBoss-Scheduler-Quartz, используя другой служебный таймер, разрешайте разные mbean для разных служебных таймеров. Таким образом, каждый таймер независим (параллелен).