Microsoft AZ-204: Azure Functions и бессерверные вычисления — Руководство по подготовке

Часть Microsoft Azure Developer Associate AZ-204 — Руководство по подготовке. Практикуйтесь с проверенными ответами в центре экзаменов Microsoft, или пройдите тесты на время на ExamRoll.io.

Обзор

Azure Functions — это бессерверная вычислительная служба, оптимизированная для нагрузок, управляемых событиями, и краткосрочных рабочих нагрузок. Она абстрагирует инфраструктуру, позволяя вам сосредоточиться на коде, который реагирует на события от конечных точек HTTP, очередей, BLOB-объектов, каналов изменений данных и потоковых служб. Вы выбираете план хостинга, который определяет масштабирование, цены и поведение при холодном запуске; привязываете свой код к триггерам и источникам данных с помощью декларативных привязок; и при необходимости создаете длительные и надежные рабочие процессы с помощью Durable Functions. Надежная конфигурация, воспроизводимое развертывание и глубокая наблюдаемость с помощью Application Insights дополняют платформу для создания систем производственного уровня.

Планы хостинга, масштабирование и холодные запуски

Выбор плана хостинга определяет характеристики выполнения и стоимость.

Выбирайте план Consumption для оптимизированных по стоимости спорадических рабочих нагрузок, Premium — при требованиях к низкой задержке и интеграции с VNET, и Dedicated — при консолидации с существующими ресурсами App Service или когда требуется полный контроль. Для сверхнизкой задержки план Premium с предварительно разогретыми экземплярами или Dedicated с Always On уменьшает количество холодных запусков. Чтобы еще больше минимизировать влияние холодного запуска, сократите зависимости, используйте запуск из пакета (run-from-package) и инициализируйте клиенты отложенно (lazily).

Триггеры и привязки

Функции активируются триггерами и взаимодействуют с данными через привязки. Триггеры определяют, как и когда запускается функция. Привязки декларативно подключаются к внешним сервисам для ввода/вывода без использования императивного кода SDK.

Распространенные триггеры:

Привязки:

Проектируйте триггеры и привязки с учетом идемпотентности, противодавления (backpressure) и изоляции сбоев. Для источников с доставкой «как минимум один раз» (at-least-once) (очереди, Event Hubs, Service Bus) пишите функции так, чтобы они были идемпотентными и устойчивыми к повторным попыткам.

Durable Functions: надежные шаблоны оркестрации

Durable Functions расширяют Azure Functions, добавляя надежную оркестрацию с отслеживанием состояния для длительных рабочих процессов с использованием фреймворка устойчивых задач (durable task framework).

Типы функций:

Шаблоны:

Durable Functions гарантируют выполнение действий «как минимум один раз» (at-least-once) и продвижение состояния оркестратора «ровно один раз» (exactly-once). Они сохраняют состояние в хранилище (по умолчанию это Azure Storage); убедитесь, что учетная запись хранения соответствует требованиям к пропускной способности и надежности. Используйте пользовательские политики повторных попыток для временных сбоев и вызывайте события для внешнего взаимодействия. Для очень длительных процессов оркестрации Durable могут выполняться от нескольких дней до месяцев благодаря встроенной отказоустойчивости.

Конфигурация, развертывание и наблюдаемость

Конфигурация приложения-функции является многоуровневой и зависит от окружения.

Варианты развертывания:

undefined

или API zipdeploy. Файлы записываются в каталог контента.

undefined

URL-адрес пакета (или 1 для последней версии). Среда выполнения монтирует пакет в режиме только для чтения, что улучшает холодный запуск и устраняет проблемы с блокировкой файлов во время развертывания. Храните пакет в Blob Storage с SAS URL для воспроизводимых откатов.

Мониторинг с помощью Application Insights:

Управляйте функциями с помощью автоматизации развертывания (GitHub Actions/Azure Pipelines), проб работоспособности для конечных точек HTTP и настроек, учитывающих автомасштабирование. Делайте пакеты компактными, кэшируйте клиенты (например, HttpClient, клиент Service Bus) как статические одноэлементные объекты (singletons) и проверяйте, что параметры подключения привязок разрешаются при запуске, чтобы предотвратить сбои во время выполнения.

Практический сценарий

Компания Contoso Retail запускает сервис промоакций, который применяет скидки в реальном времени, когда покупатели добавляют товары в корзину. Бэкенд должен реагировать на трафик с высокой вариативностью при низкой задержке, вызывать сторонний API для ценообразования и обновлять документ корзины в Cosmos DB. Отдел эксплуатации требует развертываний без простоя и глубокой видимости сбоев.

  1. Выберите план хостинга и структурируйте приложение
  1. Реализуйте оркестрацию Durable Functions для надежности и параллелизма
  1. Настройте триггеры и привязки для простоты
  1. Оптимизируйте конфигурацию и развертывание

undefined

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

  1. Мониторинг и эксплуатация

Почему были выбраны эти решения:


Azure App Service и веб-приложения · Все домены · Azure Storage и хранилище BLOB-объектов

Отработать эти вопросы → · Тесты на время на ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Сдайте экзамен →

Просмотреть Microsoft →

Related guides

Все включено

Одна подписка. Каждый экзамен.

Каждый план открывает неограниченный поиск ответов, практические тесты, объяснения AI и полную библиотеку ресурсов — на более чем 20 языках.

Ежемесячно
24.87
Just €0.83/day
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

Лучшая цена
12 месяцев
179.87
Just €0.49/daySave 40%
Все включено:
  • Неограниченный поиск ответов
  • Неограниченные практические тесты
  • Объяснения на основе AI
  • Полная библиотека ресурсов
  • 20+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

Кредитная карта не требуется*

✓ Включен бесплатный план · ✓ Отмена в любое время · ✓ Все планы открывают полный продукт