Поделиться через


Добавление сообщений в очередь службы хранилища Azure с помощью Функций

В службе "Функции Azure" входные и выходные привязки предоставляют декларативный способ предоставления коду данных внешних служб. В этой статье вы используете выходную привязку для создания сообщения в очереди, когда HTTP-запрос активирует функцию. Используйте контейнер службы хранилища Azure для просмотра сообщений очереди, создаваемых вашей функцией.

Необходимые компоненты

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.

  • Выполните инструкции по созданию первой функции в портал Azure, опустив шаг "Очистка ресурсов", чтобы создать приложение-функцию и функцию для использования в этой статье.

Добавление выходной привязки

В этом разделе вы используете пользовательский интерфейс портала для добавления выходной привязки хранилища очередей Azure к функции, созданной в предварительных требованиях. Эта привязка позволяет написать минимальный код для создания сообщения в очереди. Вам не нужно писать код для таких задач, как открытие подключения к хранилищу, создание очереди или получение ссылки на очередь. Эти задачи выполняет среда выполнения службы "Функции Azure" и выходная привязка очереди.

  1. В портал Azure найдите и выберите приложение-функцию, созданное в приложении Create your first function from the портал Azure.

  2. В приложении-функции выберите созданную функцию.

  3. Последовательно выберите Интеграция и + Добавить вывод.

    Снимок экрана, на котором показано, как создать выходную привязку для функции.

  4. Выберите тип привязки хранилища очередей Azure и добавьте параметры, указанные в таблице, следующей на этом снимке экрана:

    Снимок экрана: добавление выходной привязки хранилища очередей в функцию в портал Azure.

    Параметр Предлагаемое значение описание
    Имя параметра сообщения outputQueueItem Имя параметра выходной привязки.
    Имя очереди outqueue Имя очереди для подключения к учетной записи хранения.
    Подключение к учетной записи хранения AzureWebJobsStorage Вы можете использовать существующее подключение учетной записи хранения, используемое приложением-функцией, или создать новую.
  5. Щелкните OK, чтобы добавить привязку.

Теперь, когда выходная привязка определена, вам нужно обновить код, чтобы использовать привязку для добавления сообщений в очередь.

Добавление кода, который использует выходную привязку

В этом разделе вы добавляете код, который записывает сообщение в выходную очередь. Сообщение содержит значение, переданное триггеру HTTP в строке запроса. Например, если строка запроса включает name=Azure, сообщение очереди передается в функцию: Azure.

  1. В функции выберите Код + тест для отображения кода функции в редакторе.

  2. Обновите код функции в соответствии с языком функции:

    Добавьте выходной параметрQueueItem в сигнатуру метода, как показано в следующем примере:

    public static async Task<IActionResult> Run(HttpRequest req,
        ICollector<string> outputQueueItem, ILogger log)
    {
        ...
    }
    

    В тексте функции непосредственно перед return инструкцией добавьте код, использующий параметр для создания сообщения очереди:

    outputQueueItem.Add("Name passed to the function: " + name);
    
  3. Выберите Сохранить, чтобы сохранить изменения.

Проверка функции

  1. Сохранив изменения в коде, щелкните Тест.

  2. Убедитесь, что тест соответствует этому снимку экрана, а затем нажмите кнопку "Выполнить".

    Снимок экрана: проверка привязки хранилища очередей в портал Azure.

    Обратите внимание, что тело запроса содержит name значение Azure. Это значение отображается в сообщении очереди, созданном при вызове функции.

    В качестве альтернативы выбору запуска можно вызвать функцию, введя name URL-адрес в браузере и указав значение в строке запроса. Этот метод браузера показан в разделе "Создание первой функции из портал Azure".

  3. Проверьте журналы, чтобы убедиться, что функция успешно выполнена.

    Новая очередь с именем outqueue создается в вашей учетной записи хранения средой выполнения Функций при первом использовании выходной привязки. Учетная запись хранения используется для проверки того, создана ли очередь и сообщение.

Найдите учетную запись хранения, подключенную к AzureWebJobsStorage.

  1. В приложении-функции разверните узел "Параметры" и выберите переменные среды.

  2. На вкладке "Параметры приложения" выберите AzureWebJobsStorage.

    Снимок экрана: страница

  3. Найдите и запишите имя учетной записи.

    Снимок экрана: поиск учетной записи хранения, подключенной к AzureWebJobsStorage.

Проверка выходной очереди

  1. В группе ресурсов для приложения-функции выберите учетную запись хранения, которую вы используете.

  2. В разделе "Служба очередей" выберите "Очереди" и выберите очередь с именем outqueue.

    В ней содержится сообщение о том, что выходная привязка очереди создана при запуске функции, активируемой HTTP. Если вы вызывали функцию со значением по умолчанию nameAzure, в сообщении очереди будет указано Имя переданной функции: Azure.

  3. Снова запустите функцию.

    В очереди появится новое сообщение.

Очистка ресурсов

На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы не ожидаете, что эти ресурсы потребуются в будущем, их можно удалить, удалив группу ресурсов:

  1. В меню портала Azure или домашней странице выберите группы ресурсов>myResourceGroup.

  2. На панели myResourceGroup убедитесь, что перечисленные ресурсы являются теми, которые требуется удалить.

  3. Выберите команду Удалить группу ресурсов. Введите myResourceGroup в текстовом поле, чтобы подтвердить, а затем нажмите кнопку "Удалить".

В этой статье вы добавили выходную привязку к существующей функции. Дополнительные сведения о привязке к хранилищу очередей см. в разделе триггеров и привязок хранилища очередей.