azureazureservicebusazure-queues

Azure: equivalent of a several SQS subscribed to a SNS


In an application, after some specific event, I want to notify different services via bus service. With AWS, I would do an SNS and for each service to be notified, I would create an SQS subscribed to the SNS in order to have a specific queue for each service. It allows you to manage deadletters and to replay messages for each recipient service.

For exemple, if a SNS has 2 subscribers : SQS A and SQS B, which are consumed by 2 services, A et B. If a message is sent to the SNS, the 2 SQS receive the message. A integrate it correclty, but B don't. I will be able to manage it only with the B SQS. How do I achieve the equivalent with Azure? I know there is Azure Service Bus, which seem to be the equivalent of the SNS and Queue Storage is an equivalent to the SQS, can I achieve what I want with the 2 by create an Azure Service Bus and 2 queue Storage (one for A and one for B) ?


Solution

  • Please take a look at Azure Service Bus Topics and Subscriptions. Here, when a message is sent to a Topic, it is broadcasted to one or more Subscriptions based on the filtering rules.

    You can learn more about it here: https://learn.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptions#topics-and-subscriptions.