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


Создание функции, активируемой хранилищем BLOB-объектов, в Azure

Узнайте, как создавать функцию, активируемую при добавлении файлов или их обновлении в контейнере хранилища BLOB-объектов.

Примечание.

Редактирование на портале поддерживается только для функций скрипта JavaScript, PowerShell и C#. Редактирование Python на портале поддерживается только когда выполняется в тарифном плане Consumption. Чтобы создать приложение скрипта C#, которое поддерживает редактирование на портале, необходимо выбрать версию среды выполнения, которая поддерживает модель внутрипроцессного процесса.

По возможности следует разрабатывать функции локально.

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

Предварительные условия

Создание приложения-функции Azure

  1. На домашней странице или в меню портала Azure выберите Создать ресурс.

  2. На странице "Создать" выберите Приложение-функцию.

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

  4. На странице Основные сведения используйте параметры приложения-функции как указано в таблице ниже:

    Настройка Предлагаемое значение Описание
    Подписка Ваша подписка Подписка, под которой вы создаете новое функциональное приложение.
    Группа ресурсов myResourceGroup Имя новой группы ресурсов, в которой создается приложение-функция. Необходимо создать новую группу ресурсов, так как при создании приложений-функций в существующей группе ресурсов существуют известные ограничения.
    Имя приложения-функции Глобально уникальное имя Имя, которое идентифицирует ваше новое приложение-функцию. Допустимые символы: a-z (без учета регистра), 0-9 и -.
    Стек среды выполнения Предпочитаемый язык Выберите среду выполнения, которая поддерживает нужный функциональный язык программирования. Редактирование на портале доступно только для скрипта JavaScript, PowerShell, Python, TypeScript и C#.
    Чтобы создать приложение скрипта C#, которое поддерживает редактирование на портале, необходимо выбрать версию среды выполнения, которая поддерживает модель внутрипроцессного процесса.
    Библиотека классов C# и функции Java должны быть разработаны локально.
    Версия Номер версии Выберите версию установленной среды выполнения.
    Регион Предпочтительный регион Выберите регион, ближайший к вам или к другим службам, к которым могут обращаться функции.
    Операционная система Windows Операционная система предварительно выбирается на основе выбора стека среды выполнения, но при необходимости можно изменить этот параметр. Редактирование на портале поддерживается только в Windows.
  5. Примите параметры по умолчанию на оставшихся вкладках, включая поведение по умолчанию для создания новой учетной записи хранения на вкладке хранилища и нового экземпляра Application Insights на вкладке "Мониторинг ". Вы также можете использовать существующую учетную запись хранения или экземпляр Application Insights.

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

  7. Выберите значок Уведомления в правом верхнем углу портала. Вы должны увидеть сообщение Развертывание выполнено.

  8. Выберите Перейти к ресурсу для просмотра нового приложения-функции. Можно также установить флажок Закрепить на панели мониторинга. Закрепление упрощает возвращение к этому ресурсу функции приложения из панели мониторинга.

    Снимок экрана: уведомление о развертывании.

Вы успешно создали новое функциональное приложение. Затем создайте функцию в новом функциональном приложении.

Создание функции, активируемой хранилищем BLOB-объектов Azure

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

  2. В разделе "Выбор шаблона" выберите шаблон триггера Blob и выберите Далее.

  3. В сведениях о шаблоне настройте новый триггер с параметрами, указанными в этой таблице, а затем нажмите кнопку "Создать".

    Настройка Предлагаемое значение Описание
    Тип вакансии Добавление в приложение Этот параметр отображается только для приложения Python версии 2.
    Новая функция Уникально для вашего функционального приложения Имя функции, активируемой BLOB.
    Путь samples-workitems/{name} Местоположение в хранилище BLOB-данных, которое отслеживается. Имя файла объекта Blob передается в привязке как параметр name.
    Подключение к учетной записи хранения AzureWebJobsStorage Вы можете использовать подключение к учетной записи хранения, которое уже используется вашим функциональным приложением, или создать новое.

    Azure создает функцию, активируемую службой Blob Storage, на основе предоставленных значений. Затем создайте контейнер samples-workitems.

Создание контейнера

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

  2. На странице учетной записи хранилища выберите Хранилище данных>Контейнеры>+ Контейнер.

  3. В поле "Имя" введите samples-workitemsи нажмите кнопку "Создать", чтобы создать контейнер.

  4. Выберите новый samples-workitems контейнер, который используется для тестирования функции, отправив файл в контейнер.

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

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

  2. samples-workitems На странице контейнера выберите Загрузить>, далее Обзор файлов, перейдите к файлу на локальном компьютере (например, файл изображения) и выберите этот файл.

  3. Выберите Открыть, затем — Передать.

  4. Вернитесь к журналам функций приложения и убедитесь, что blob был считан.

    Примечание.

    Если ваше приложение-функция выполняется в рамках плана потребления по умолчанию, между добавлением или обновлением объекта blob и запуском функции могут возникнуть задержки до нескольких минут. Если вам нужна низкая задержка в функциях с триггерами BLOB, рассмотрите один из этих других вариантов триггера BLOB.

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

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

Под ресурсами в Azure подразумеваются приложения-функции, функции, учетные записи хранения и т. д. Они объединяются в группы ресурсов, и вы можете удалить всё в группе, удалив саму группу.

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

  1. На портале Azure перейдите на страницу Resource group (Группа ресурсов).

    Чтобы перейти на эту страницу со страницы приложения-функции, перейдите на вкладку Обзор,и щелкните ссылку в разделе Группа ресурсов.

    Снимок экрана: выбор группы ресурсов, которую требуется удалить со страницы приложения-функции.

    Чтобы перейти на эту страницу с панели управления, выберите Resource groups (Группы ресурсов), а затем выберите группу ресурсов, которая использовалась в этой статье.

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

  3. Выберите Удалить группу ресурсов и следуйте инструкциям.

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

Следующие шаги

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

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