You have an Azure subscription that contains two applications named App1 and App2. App1 is a sales processing application. When a transaction in App1 requires shipping, a message is added to an Azure Storage account queue, and then App2 listens to the queue for relevant transactions.
In the future, additional applications will be added that will process some of the shipping requests based on the specific details of the transactions.
You need to recommend a replacement for the storage account queue to ensure that each additional application will be able to read the relevant transactions.
What should you recommend?
Click on the arrows to vote for the correct answer
A. B. C. D.D
A queue allows processing of a message by a single consumer. In contrast to queues, topics and subscriptions provide a one-to-many form of communication in a publish and subscribe pattern. It's useful for scaling to large numbers of recipients. Each published message is made available to each subscription registered with the topic. Publisher sends a message to a topic and one or more subscribers receive a copy of the message, depending on filter rules set on these subscriptions.
https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-queues-topics-subscriptionsTo ensure that each additional application can read the relevant transactions, we need a messaging solution that can support multiple subscribers while maintaining the decoupling between publishers and subscribers. There are multiple messaging options in Azure, but the recommended solution is Azure Service Bus, which provides both queue and topic-based messaging.
A queue is a simple messaging construct that supports point-to-point communication. In this scenario, we have one publisher (App1) and multiple subscribers (future applications). A single queue will not be sufficient to handle multiple subscribers as each subscriber will receive all the messages in the queue. We can create multiple queues, but this can be difficult to manage and doesn't scale well.
A topic is a more advanced messaging construct that supports publish-subscribe communication. A topic allows publishers to send messages to a central hub, and subscribers can choose to receive only the messages they are interested in based on specific message properties or filters. This makes it easier to manage and scale the messaging solution.
Therefore, the recommended solution is to use Azure Service Bus with a topic. This will allow App1 to publish messages to a central hub, and future applications can subscribe to the relevant messages based on their specific requirements. This will ensure decoupling between publishers and subscribers and will allow for easy management and scaling of the messaging solution.
Azure Data Factory pipeline is a data integration service that does not support messaging, and multiple storage account queues do not provide the necessary flexibility and scalability. Hence, neither option is recommended for this scenario.