Azure Storage Queues Transport

Project Hosting
NuGet Package NServiceBus.Azure.Transports.WindowsAzureStorageQueues (5.x)
Target NServiceBus Version: 4.x
Standard support for version 4.x of NServiceBus has expired. For more information see our Support Policy.

Azure Storage Queues is a service hosted on the Azure platform, used for storing large numbers of messages. The messages can be accessed from anywhere in the world via authenticated calls using HTTP or HTTPS.

Azure Storage Queues are designed for very large cloud networks or hybrid networks, providing a highly reliable and very cheap queuing service. A single message can be up to 64 KB in size and a queue can keep millions of messages, up to the total capacity limit of the storage account (200 TB). Furthermore, it is capable to emulate local transactions using it's queue Peek-Lock mechanism.

The main disadvantages of this service is latency introduced by remoteness and the fact that it only supports HTTP based communication.

As part of the Azure support for NServiceBus, one can choose between two transports provided by the Azure platform: Azure Storage Queues and Azure Service Bus. Each of them has different features, capabilities, and usage characteristics. A detailed comparison and discussion of when to select which is beyond the scope of this document. To help decide which option best suits the application's needs, refer to the Azure Queues and Azure Service Bus Queues - Compared and Contrasted article.

When considering an Azure Transport it is important to consider the transaction guarantees that that service provides.

Configuring the endpoint

To use Azure Storage Queues as the underlying transport configure it in the following way:

configure.UseTransport<AzureStorageQueue>();

Then set up appropriate connection strings and consider using aliase to make them more secure.

Samples

Related Articles


Last modified