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

Я пытаюсь определить два планировщика в 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:

ВНИМАНИЕ: Экземпляр планировщика позволяет запускать только одно расписание за раз. Поэтому, когда вы хотите запустить два расписания, создайте экземпляры с этим MBean. Рекомендуемое имя объекта для MBean::service=Scheduler,schedule=

Я пытался следовать этому совету, но это не сработало. Если у кого-то есть опыт работы более чем с одним планировщиком для параллельной работы на JBoss 4.0.5.GA, любая помощь будет принята с благодарностью.

1 ответ

Решено, добавив этот атрибут в Mbean

<attribute name="TimerName">jboss:service=TimerNew</attribute>

Как объясняется в JBoss-Scheduler-Quartz, используя другой сервисный таймер, разрешите различия mbean в другом сервисном таймере. Таким образом, каждый таймер является независимым (параллельным).

Другие вопросы по тегам