Azure Storage Queue vs Azure Service Bus Queue

Azure Queue Storage

Azure Queue storage is a service for storing a large number of messages accessible from anywhere in the world via calls authenticated via HTTP or HTTPS. The size of a queue message can reach 64 KB and the queue can contain millions of messages up to the total capacity limit of the storage account.

 

Microsoft Azure Service Bus

Microsoft Azure Service Bus supports a range of cloud-based middleware technologies, such as reliable message queuing and persistent publish / subscribe messaging. These “mediated” messaging functions can be thought of as isolated messaging functions that support publish / subscribe, temporary isolation, and load balancing scenarios using Service Bus messaging workloads. Separate communication has many advantages. For example, a client and a server can connect as needed and perform operations asynchronously.

 

Azure Queue Storage can store multiple messages accessible via HTTP or HTTPS. Provides very reliable and very inexpensive queuing services. The maximum size of queue messages is 64 KB. When you remove a queue from a message, it is not visible to other recipients. Depending on the capacity of the storage account, the queue can contain millions of messages.

The general use of Azure storage queues is as follows:

  • The queue provides asynchronous communication.
  • You can forward messages from the Azure web role to the Azure Worker role.
  •  Charge leveling.
  • Load balancing.
  • Time decoupling.
  •  Loose coupling.

Microsoft Azure Service Bus offers two messaging solutions. One is the relay and the other messaging solution is intermediate messaging.

Broker messaging provides asynchronous communication when the sender and recipient do not need to be online at the same time. The messaging infrastructure ensures that messages are stored in a broker (queue) until the recipient is ready to receive them. The sender does not have to wait for a response from the recipient to continue processing and send other messages. This way you can disconnect the components from the distributed application.

Service bus queues have the following properties:

  • Service Bus queues support broker messaging communication.
  • The queue provides delivery of the first in, first out (FIFO) message. In other words, messages are received and processed by recipients in the order in which they are added to the queue.
  • Each message is received and processed by a single message recipient.

Difference between the storage queue and the service bus queue

Cost-based Difference

the storage queue charge is $0.0005 per 10,000 transactions and the service bus queue charge is $0.05 per million operations for the basic tier. So an Azure queue is cheaper than a service bus queue.

Performance-Based Differences

Average wait time: The average wait time for the Azure storage queue is 10 milliseconds, while the wait time for the service bus queue is 20-25 milliseconds.

Capacity and Quota Base

Maximum queue size supported: Azure storage queues support 200 TB in a single storage account, while service queues only support 80 GB.

 

Security

For authentication, the storage queue uses security tokens shared by other storage components such as tables and blobs. To access the Azure queue, you must provide a storage account name and an associated token.

Azure Access Control Service (ACS) is used as the primary authentication mechanism for service bus queues, but it also supports multiple predefined identity providers and custom providers.

ACS is an Azure service that provides a simple way to authenticate users and access web applications and services without adding complex authentication logic to the code.

[/vc_column_inner][/vc_row_inner]