Azure Storage Queues vs Azure Service Bus Queues. Which one to use?



Azure Storage Queue

Azure Storage Queue is a type of message queuing services provided by Azure that provides queue storage infrastructure for a REST-based interface, within and between different applications and services.


Azure Queue storage service enables storing large numbers of messages that can be accessed from anywhere via authenticated calls using HTTP or HTTPS.


Some key conditions and metrics to monitor in Azure Storage Queue are;

  • Availability of Storage Queue

  • Number of messages in the queue

  • Total requests (Write, Read and Delete Requests)


Usage:

It primarily helps in the assured delivery of system messages between and within applications. Queues can be used to offload background and non-interactive workloads that ultimately help with scaling applications and in managing sudden traffic bursts. Azure Storage Queue enables storing messages until the system is available to process queues further.


Azure Queue storage allows application components to communicate with each other by decoupling system components. These components can communicate in the cloud, on the desktop, on-premises, or on mobile devices without depending on each other. If a component crashes, Azure Storage Queue can buffer requests until it is back up and able to process requests again.


Azure Storage provides a number of client libraries that interact with Azure Storage to provide support for application component failures. A single queue message can be up to 64 KB in size, and a queue can contain millions of messages, up to the total capacity limit of a storage account.


Azure Service Bus

Azure Service Bus is a cloud-based technology for messaging and communicating between different applications and devices. Azure Service Bus avails ‘message brokers to conduct the processing of messages and ‘messaging stores to cache the messages. It helps enhance the availability by constructing topologies with a routing system.