Azure Service Bus Конкретность подписки на тему
У меня есть следующее требование
Сообщение опубликовано в теме / очереди
Несколько потребителей подписались на тему / очередь. Таким образом, наше требование состоит в том, чтобы только один потребитель слушал сообщение. Это означает, что ни один другой потребитель не может получить такое же сообщение.
Я чувствую, что очередь подойдет лучше всего. Но я советую от нашего архитектора проверить, можем ли мы добиться этого из Темы?
Итак, любое тело, пожалуйста, дайте мне знать, можем ли мы достичь этого через Темы, а также за и против?
Благодарю.
1 ответ
Azure Service Bus Queue - это отдельная очередь сообщений. Вы отправляете ему сообщение, и получатель сообщения получит сообщение и сможет обработать его соответствующим образом. Каждое сообщение будет обработано только один раз.
Раздел служебной шины Azure - это более надежная очередь сообщений, чем очередь служебной шины Azure. В разделе "Темы" может быть несколько подписок, настроенных для перехвата сообщений на основе фильтра. Если несколько подписок имеют фильтр, который соответствует входящему сообщению, то каждая из этих подписок получит копию сообщений. С помощью Темы вы можете настроить фильтры подписки в соответствии с потребностями вашего проекта.
Если вы знаете, что сообщение необходимо обработать в вашей системе только один раз, и очередь сообщений используется одним приложением-получателем сообщений (одним или несколькими размещенными экземплярами), тогда скорее всего очередь заданий Azure Service Bus Queue.