2013-03-11 2 views
1

У меня есть scanario, в результате которого я хотел бы переигрывать события из файла в JMS с учетом временных меток каждого события.Планирование микро задач в Java

Существует много сотен тысяч событий. Некоторые события находятся всего в одном или двух миллисекундах, некоторые из них разделены на несколько секунд.

Любые предложения по наилучшему способу сделать это будут очень признательны.

+0

Вы хотите, чтобы вы запускали ту же последовательность событий в теме/очереди JMS? – radai

ответ

1

вот что я хотел бы попробовать, и в таком порядке:

  1. использование quartz. Я не понимаю, почему он не сможет обрабатывать тысячи тысяч событий.
  2. Если по какой-то причине кварц не подходит, я бы взял все временные метки события (вы сказали, что повторите так, чтобы вы знали, что знаете все их), закажите их и используйте основной поток + пул потоков. основной поток sleep() s для интервалов между последовательными событиями и когда его время для запуска события отправляет задачу вызова обработчика исполнителю. если вы хотите повысить точность (и можете жить с оживленным ожиданием), я бы избежал сна() и busywait
Смежные вопросы