В чем разница между очередью мертвых писем и очередью возврата? - PullRequest
18 голосов
/ 18 мая 2009

В чем разница между очередью мертвых писем и очередью возврата?

В терминах WebSphere MQ и в терминах серверов приложений.

Все серверы приложений J2EE / JEE имеют провайдера MQ, они также имеют конструкцию очереди недоставленных сообщений или это что-то особенное для WebSphere MQ?

Мое понимание очереди возврата следующее:

Если MQ не может доставить сообщение в пункт назначения после указанного числа попыток, оно перемещает сообщение в очередь возврата.

У меня нет четкого понимания очереди Dead Letter.

Ценю любую помощь.

Ответы [ 4 ]

13 голосов
/ 18 мая 2009

Очередь недоставленных писем всегда использовалась в MQSeries (последний раз, когда я использовал MQ) для хранения сообщений, поступивших в администратор очередей, но очередь не существовала.

Например, если сообщение было адресовано администратору очередей X и очереди Y , оно пришло бы через канал в диспетчере X .

Если канал получателя обнаружил, что очереди нет Y , он будет помещен в очередь недоставленных сообщений.

Очередь возврата, с другой стороны, больше относится к уровню приложения (по крайней мере, с точки зрения MQ). Когда клиент MQ по какой-либо причине не может обработать сообщение, он может отправить его обратно для последующей обработки (обратно в исходную очередь).

Если резервное копирование выполняется слишком много раз (пороговое значение можно настроить), оно перемещается в очередь возврата.

4 голосов
/ 23 июня 2009

Спасибо за ответы. Я также выяснил, что если приложение по какой-то причине не может переместить сообщение в очередь возврата (BOQ), то делается попытка переместить очередь в очередь недоставленных сообщений (DLQ).

В нашем приложении это произошло. Возникли некоторые проблемы с разрешением в очереди возврата, поэтому сообщение не удалось записать в BOQ, и оно оказалось в очереди недоставленных сообщений.

1 голос
/ 18 мая 2009

Очередь мертвых писем ведет себя так же, как и Backout. Я рассматриваю очередь недоставленных писем как крематорий для сообщений, которые не могут быть восстановлены в очередях «Ошибка» или «Отказ» и которые содержат последние, не связанные с бизнесом данные, которые необходимо собрать. Как только информация получена, сообщение откладывается навсегда. Отказ хорош для анализа сообщений на предмет данных, которые, возможно, потребуется восстановить для полной повторной обработки или отправить обратно в область приложения, чтобы они могли принять решение.

0 голосов
/ 16 июня 2016

Очередь мертвых писем также является локальной очередью. Если мы пытаемся поместить сообщение из одной очереди в другую, а сообщение не было отправлено в правильное место назначения, в это время сообщение перейдет в очередь недоставленных сообщений.

...