Как вы явно отказываетесь от сообщения в лазурной функции, вызванного темой сообщения / подписки? - PullRequest
0 голосов
/ 12 января 2019

Я использую функцию Azure, которая вызывается каждый раз, когда новое сообщение публикуется в теме + ПОДПИСКА (НЕ очередь!)

Что именно мне нужно сделать в теле функции Azure, чтобы ТОЧНО переместить его в очередь мертвых букв?

Согласно лазурью,

Превышение MaxDeliveryCount. Очереди и подписки имеют QueueDescription.MaxDeliveryCount и Свойство SubscriptionDescription.MaxDeliveryCount соответственно; значение по умолчанию равно 10. Всякий раз, когда сообщение было доставлено в соответствии с lock (ReceiveMode.PeekLock), но был явно отменен или срок действия блокировки истек, сообщение BrokeredMessage.DeliveryCount равно увеличивается. Когда DeliveryCount превышает MaxDeliveryCount, появляется сообщение перемещается в DLQ с указанием причины MaxDeliveryCountExceeded Код.

С точки зрения кода на C # Что именно они подразумевают под

"явно отменено или срок действия блокировки истек"

Я говорю только о теме / подписке здесь. Пожалуйста, не комментируйте очереди сервисных автобусов, просто тема / подписка. (даже если логика та же самая, меня интересует только тема / подписка здесь. разговор об очередях сервисных шин просто запутает фокус вопроса)

1 Ответ

0 голосов
/ 12 января 2019

Вы не можете явно перебить сообщение из функции Azure. Функция будет отправлять сообщения с ошибками после прохождения всех попыток. Явные мертвые буквы возможны при использовании клиента C # и реализации пользовательской логики получения.

Кстати, подписка или очередь, это не имеет значения. Они обе очереди.

...