Azure Queue Storage est un service de la plateforme cloud Azure de Microsoft conçu pour la mise en file d'attente des messages entre les composants d'application, permettant une communication asynchrone et un découplage. Il vous permet de stocker un nombre illimité de messages, chacun d'une taille allant jusqu'à 64 Ko, et prend en charge des opérations telles que la création et la suppression de files d'attente, l'ajout, la récupération, la mise à jour et la suppression de messages, ainsi que la gestion des métadonnées et des politiques d'accès. Bien qu'il traite généralement les messages de manière FIFO (premier entré, premier sorti), un FIFO strict n'est pas garanti.
Enumeration
# You need to know the --account-name of the storage (az storage account list)azstoragequeuelist--account-name<storage_account># Queue Metadataazstoragequeuemetadatashow--name<queue_name>--account-name<storage_account>#Get ACLazstoragequeuepolicylist--queue-name<queue_name>--account-name<storage_account># Get Messages (getting a message deletes it)azstoragemessageget--queue-name<queue_name>--account-name<storage_account># Peek Messagesazstoragemessagepeek--queue-name<queue_name>--account-name<storage_account>
# Get the Storage Context$storageAccount = Get-AzStorageAccount -ResourceGroupName QueueResourceGroup -Name queuestorageaccount1994$ctx = $storageAccount.Context# Set Variables for Storage Account$storageAccountName = "queuestorageaccount"# List QueuesGet-AzStorageQueue-Context $context$queueName = "myqueue"# Retrieve a specific queue$queue = Get-AzStorageQueue -Name $queueName -Context $context$queue # Show the properties of the queue# Retrieve the access policies for the queue$accessPolicies = Get-AzStorageQueueStoredAccessPolicy -Context $context -QueueName $queueName$accessPolicies# Peek Messages$queueMessage = $queue.QueueClient.PeekMessage()$queueMessage.Value# Set the amount of time you want to entry to be invisible after read from the queue# If it is not deleted by the end of this time, it will show up in the queue again$visibilityTimeout = [System.TimeSpan]::FromSeconds(10)# Read the messages from the queue, then show the contents of the messages.$queueMessage = $queue.QueueClient.ReceiveMessages(1,$visibilityTimeout)$queueMessage.Value