Overview
Azure Queue storage provides reliable messaging for asynchronous communication between components of cloud services. It enables you to store large numbers of messages that can be accessed from anywhere via HTTP or HTTPS.
Key Concepts
- Queue – A container for messages.
- Message – A piece of data, up to 64 KB in size.
- Visibility timeout – The period a message remains invisible after being retrieved.
- TTL (time‑to‑live) – Maximum lifetime of a message (up to 7 days).
Creating a Queue
using Azure.Storage.Queues;
using Azure.Storage.Queues.Models;
string connectionString = "your_connection_string";
string queueName = "myqueue";
QueueClient queueClient = new QueueClient(connectionString, queueName);
queueClient.CreateIfNotExists();
Sending a Message
await queueClient.SendMessageAsync("Hello, Azure Queue!");
Receiving Messages
QueueMessage[] retrievedMessages = await queueClient.ReceiveMessagesAsync(maxMessages: 5);
foreach (QueueMessage msg in retrievedMessages)
{
Console.WriteLine($"Message: {msg.MessageText}");
await queueClient.DeleteMessageAsync(msg.MessageId, msg.PopReceipt);
}
Properties & Metadata
| Property | Description |
|---|---|
| ApproximateMessageCount | Approximate number of messages in the queue. |
| Metadata | Custom name/value pairs set on the queue. |
| CreatedOn / UpdatedOn | Timestamps for the queue. |