На общем языке, используемом разработчиками, очередь — это структура данных, используемая для хранения данных, которая следует правилу «первым вошел — первым вышел». Элемент данных может быть вставлен из задней части очереди, пока он извлекается спереди. Очереди Azure — это очень похожая концепция, которая используется для хранения сообщений в очереди. Отправитель отправляет сообщение, а клиент получает и обрабатывает их. К сообщению прикреплено несколько атрибутов, например, срок действия.
Клиент обычно обрабатывает и удаляет сообщение. Служба Windows Azure позволяет хранить сообщение в течение 7 дней, а затем автоматически удаляется, если оно не удалено клиентом. Может быть один отправитель и один клиент или один отправитель и много клиентов или много отправителей и много клиентов.
Windows Azure предлагает две службы для очередей сообщений. В этой главе рассматривается очередь Windows Azure. Другая служба называется «Очередь служебной шины».
Разделение компонентов является одним из преимуществ служб очереди сообщений. Он работает в асинхронной среде, где сообщения могут отправляться между различными компонентами приложения. Таким образом, он обеспечивает эффективное решение для управления рабочими процессами и задачами. Например, сообщение о завершении задачи отправляется из внешнего интерфейса приложения и принимается внутренним работником, который затем завершает задачу и удаляет сообщение.
Соображения
Сообщения в очереди хранения нигде не реплицируются, это означает, что имеется только одна копия вашего сообщения. Максимальное количество сообщений, которое может быть обработано, составляет 20 000. Максимальный размер сообщения может составлять 64 КБ.
Управление очередями с помощью PowerShell
Создать очередь
Шаг 1 — Щелкните правой кнопкой мыши Windows PowerShell на панели задач. Выберите «Запустить ISE от имени администратора».
Шаг 2 — Запустите следующую команду для доступа к вашей учетной записи. Пожалуйста, замените выделенную часть для вашего аккаунта.
$context = New-AzureStorageContext -StorageAccountName tutorialspoint StorageAccountKey iUZNeeJD+ChFHt9XHL6D5rkKFWjzyW4FhV0iLyvweDi+Xtzfy76juPzJ+mWtDmbqCWjsu/nr+1pqBJj rdOO2+A==
Шаг 3 — Укажите учетную запись хранения, в которой вы хотите создать очередь.
Set-AzureSubscription –SubscriptionName "BizSpark" -CurrentStorageAccount tutorialspoint
Шаг 4 — Создать очередь.
$QueueName = "thisisaqueue" $Queue = New-AzureStorageQueue –Name $QueueName -Context $Ctx
Получить очередь
$QueueName = "thisisaqueue" $Queue = Get-AzureStorageQueue –Name $QueueName –Context $Ctx
Удалить очередь
$QueueName = "thisisaqueue" Remove-AzureStorageQueue –Name $QueueName –Context $Ctx
Вставить сообщение в очередь
Шаг 1 — Войдите в свой аккаунт.
$context = New-AzureStorageContext -StorageAccountName tutorialspoint StorageAccountKey iUZNeeJD+ChFHt9XHL6D5rkKFWjzyW4FhV0iLyvweDi+Xtzfy76juPzJ+mWtDmbqCWjsu/nr+1pqBJj rdOO2+A==
Шаг 2 — Укажите учетную запись хранения, которую вы хотите использовать.
Set-AzureSubscription –SubscriptionName "BizSpark" -CurrentStorageAccount tutorialspoint
Шаг 3 — Получить очередь и затем вставить сообщение.
$QueueName = "myqueue" $Queue = Get-AzureStorageQueue -Name $QueueName -Context $ctx if ($Queue -ne $null) { $QueueMessage = New-Object -TypeName Microsoft.WindowsAzure.Storage.Queue.CloudQueueMessage -ArgumentList "my message is this" $Queue.CloudQueue.AddMessage($QueueMessage) }
Условие ‘if’ в приведенном выше сценарии проверяет, существует ли указанная очередь или нет.
Удалить следующее сообщение из очереди
Шаг 1. Сначала подключитесь к своей учетной записи и укажите учетную запись хранения, выполнив команды, как показано в приведенных выше шагах.
Шаг 2 — Получить очередь.
$QueueName = "myqueue" $Queue = Get-AzureStorageQueue -Name $QueueName -Context $ctx $InvisibleTimeout = [System.TimeSpan]::FromSeconds(10)
Шаг 3 — Заблокируйте следующее сообщение.
$QueueMessage = $Queue.CloudQueue.GetMessage($InvisibleTimeout)
Шаг 4 — Удалить удаленное сообщение.
$Queue.CloudQueue.DeleteMessage($QueueMessage)
Управление очередями с помощью Azure Storage Explorer
Шаг 1 — Выберите учетную запись хранения из выпадающего списка в правом верхнем углу. Счета будут отображаться, если вы добавили их во время предыдущего использования. Если нет, вы можете добавить учетную запись, и он будет запрашивать ваши учетные данные. После входа вы войдете в свою учетную запись в Azure Storage Explorer.
Шаг 2 — Вы можете добавить новую очередь, выбрав «Queues» на левой панели и нажав «New», как показано на следующем рисунке.
Шаг 3 — Введите имя очереди, и она будет создана в вашей учетной записи хранения.
Шаг 4 — Добавьте и удалите сообщения, выбрав очередь на левой панели.