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


Добавление сообщений в очередь службы хранилища 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 в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.

В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.

На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.

Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.

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