Мертвый бюллетень подписчика служебной шины Azure

Я везде искал информацию по этому поводу, но не могу найти то, что ищу.

У меня лазурная тема с одной подпиской.

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

Я могу получить доступ к сообщениям, но не знаю, как их восстановить.

Я не хочу создавать копию сообщения и отправлять его в тему. Я специально хочу переместить его в очередь подписки, из которой он пришел.

Есть какой-либо способ сделать это?


person Jamez    schedule 26.02.2014    source источник


Ответы (1)


Не знаю, возможно ли это. Что мы в основном делаем для обработки и возобновления сообщений, так это использование шаблона откладывания сообщений. Если обработчик не отправляет сообщение, он может отложить сообщение и отслеживать порядковый номер сообщения (обычно в базе данных управления / отслеживания или компоненте). Всякий раз, когда сообщение необходимо повторно обработать (повторить попытку), получатель может специально получить это сообщение (используя тот же идентификатор отложенного сообщения) и обработать его снова.

person Sam Vanhoutte    schedule 27.02.2014
comment
Спасибо за ваш ответ. Я подумал о том, чтобы отложить отправку сообщений, но я не был уверен, что это хороший подход. Если номер последовательности сообщения утерян, сможете ли вы восстановить его? - person Jamez; 27.02.2014
comment
Чтобы использовать этот шаблон, вам действительно нужно где-то хранить книги. мы делаем это в таблице и предоставляем это через интерфейс управления (веб-страницу), где мы можем инициировать повторные попытки и т. д. Я также знаю, что вы можете просмотреть все сообщения, поэтому, возможно, вы можете проверить, было ли сообщение уже отложено или нет - person Sam Vanhoutte; 27.02.2014
comment
Большое спасибо, я поиграю с этим подходом. Вы случайно не знаете, остаются ли отложенные сообщения в очереди, в которой они были отложены, с измененным состоянием или они перемещаются в отложенную очередь? - person Jamez; 27.02.2014
comment
они остаются в одной очереди. Я считаю, что вы сможете прочитать их состояние в объекте сообщения. если хотите, я могу сделать образец из этого (но не в ближайшее время) - person Sam Vanhoutte; 27.02.2014
comment
Нет, спасибо, хорошо, спасибо за информацию и ответ. У меня достаточно, чтобы пойти и развлечься! Спасибо еще раз! :) - person Jamez; 28.02.2014