Запуск параллельных расписаний в JBoss 4.0.5.GA

#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 для разных служебных таймеров. Таким образом, каждый таймер независим (параллелен).