Azure Service Bus Конкретность подписки на тему

У меня есть следующее требование

Сообщение опубликовано в теме / очереди

Несколько потребителей подписались на тему / очередь. Таким образом, наше требование состоит в том, чтобы только один потребитель слушал сообщение. Это означает, что ни один другой потребитель не может получить такое же сообщение.

Я чувствую, что очередь подойдет лучше всего. Но я советую от нашего архитектора проверить, можем ли мы добиться этого из Темы?

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

Благодарю.

1 ответ

Решение

Azure Service Bus Queue - это отдельная очередь сообщений. Вы отправляете ему сообщение, и получатель сообщения получит сообщение и сможет обработать его соответствующим образом. Каждое сообщение будет обработано только один раз.

Раздел служебной шины Azure - это более надежная очередь сообщений, чем очередь служебной шины Azure. В разделе "Темы" может быть несколько подписок, настроенных для перехвата сообщений на основе фильтра. Если несколько подписок имеют фильтр, который соответствует входящему сообщению, то каждая из этих подписок получит копию сообщений. С помощью Темы вы можете настроить фильтры подписки в соответствии с потребностями вашего проекта.

Если вы знаете, что сообщение необходимо обработать в вашей системе только один раз, и очередь сообщений используется одним приложением-получателем сообщений (одним или несколькими размещенными экземплярами), тогда скорее всего очередь заданий Azure Service Bus Queue.

Другие вопросы по тегам