Задержка потребителя сообщения MDB - PullRequest
2 голосов
/ 27 декабря 2011

Есть ли в hornetq какая-либо опция для установки задержки потребителя сообщения. если так, пожалуйста, помогите с примером. Наш запрос: нам нужно, чтобы MDB прочитал сообщение с постоянной задержкой в ​​2 минуты.

Ответы [ 3 ]

0 голосов
/ 04 января 2012

ОК - тогда я думаю, что вы должны просто получить сообщение, использовать

http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/DelayQueue.html

и использовать его с сервисом планировщика, таким как Quartz или с новым таймером в EJB3.1.

Бест, Андерс

0 голосов
/ 02 июля 2012

Один из вариантов - поместить заголовок JMS, в котором есть время, в которое вы хотите обработать сообщение. Например, через 2 минуты после создания сообщения. Затем ваш читатель может иметь селектор на основе времени, который выбирает только сообщения, в которых этот заголовок> является текущим временем.

0 голосов
/ 27 декабря 2011

Я не думаю, что это обычный вариант использования MDB.Вы уверены, что вам нужно MBD?Задумывались ли вы об очередях тем?

Или вы можете описать деловые причины, требующие задержки?

...