Microsoft AZ-305: Архитектура интеграции и обмена сообщениями — Руководство по подготовке

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

Обзор

Архитектура интеграции и обмена сообщениями в Azure строится на выборе правильного сервиса для семантики перемещения команд, событий и данных; проектировании с учетом надежности, упорядоченности и масштабирования; а также на безопасной интеграции гибридных систем. Основные строительные блоки включают Azure Service Bus для корпоративного обмена сообщениями с многофункциональными брокерами, Azure Event Grid для реактивной маршрутизации событий, Azure Event Hubs для высокопроизводительного приема потоковых данных и Storage Queues для простой организации очередей. Вокруг них располагаются Azure Logic Apps для автоматизации процессов, API Management для управления и удобства разработчиков, Azure Data Factory для ETL/ELT, Azure Relay для подключения к локальным ресурсам, совместимого с брандмауэрами, и Azure Notification Hubs для push-уведомлений для мобильных устройств. Грамотное проектирование предполагает использование подходящего сервиса для конкретной задачи, явное моделирование контрактов и режимов отказа, а также применение шаблонов оркестрации или хореографии, где это уместно.

Обмен сообщениями и событиями в Azure

Azure Service Bus — это корпоративный брокер для команд и рабочих процессов, требующих упорядоченной доставки, транзакций, FIFO в пределах групп и обработки недоставленных сообщений. Очереди обеспечивают обмен сообщениями точка-точка между одним производителем и одной группой конкурирующих потребителей. Темы реализуют модель публикация/подписка с множеством независимых подписок, которые могут фильтровать и маршрутизировать сообщения с помощью фильтров и действий, подобных SQL. Сеансы сообщений группируют связанные сообщения под одним sessionId, обеспечивая FIFO и обработку с сохранением состояния для каждой группы; блокировка сеанса гарантирует, что только один потребитель обрабатывает сеанс в данный момент времени. Очереди недостав

Интеграция, API и гибридное подключение

Azure Logic Apps предоставляет управляемую автоматизацию рабочих процессов с сотнями коннекторов. В модели Consumption (многопользовательской) вы платите за каждое действие, получая автоматическое масштабирование и многопользовательские коннекторы; идеально подходит для пиковых нагрузок. Модель Standard (однопользовательская) работает на среде выполнения Functions и предлагает рабочие процессы с отслеживанием и без отслеживания состояния, более высокую пропускную способность, пользовательские и встроенные коннекторы, выполняющиеся в процессе, контейнеризацию, локальную разработку и интеграцию с VNET/приватными конечными точками; идеально для изоляции на уровне предприятия и предсказуемой производительности. Integration Service Environment (ISE) — это устаревшая выделенная среда для частных сетей и локализации данных; в новых проектах обычно предпочитают Logic Apps Standard с интеграцией VNET или развертывание в App Service Environment v3.

Azure API Management (APIM) предоставляет уровень абстракции и управления для API. Политики применяются на этапах inbound, backend и outbound для реализации сквозных задач, таких как validate-jwt, rate-limit-by-key, quota, set-header, retry, cache-lookup/store и set-backend-service для динамической маршрутизации. Продукты (Products) группируют один или несколько API, объединяют поведение политик и могут быть опубликованы для определенных групп. Подписки (Subscriptions) выдают ключи для каждого потребителя или продукта для измерения и контроля доступа; ключи можно ротировать и привязывать к квотам. Портал для разработчиков обеспечивает самостоятельное обнаружение, документирование, тестирование и процессы подключения, а локально размещаемый шлюз (self-hosted gateway) позволяет развертывать гибридные решения (плоскость управления/граничные узлы) в локальной среде или в других облаках.

Azure Relay обеспечивает входящее подключение к локальным службам без открытия входящих портов брандмауэра. Hybrid Connections использует WebSockets через TLS 443 для универсальной двунаправленной сокетной связи, инициируемой из локальной среды и от клиентов к Relay, что полезно для HTTP и произвольных протоколов, инкапсулированных в WebSockets. WCF Relay предоставляет доступ к локальным конечным точкам WCF (NetTcp/HTTP) через ретранслятор с безопасностью на уровне транспорта или сообщений и доступом на основе утверждений (claims); это идеальное решение для существующих служб WCF, которым требуется безопасный доступ без изменения настроек брандмауэра.

Azure Notification Hubs — это кроссплатформенный брокер push-уведомлений, который абстрагирует платформенные системы уведомлений (APNs для iOS, FCM для Android, WNS для Windows, ADM для Amazon). Бэкенды регистрируют устройства или установки с тегами и шаблонами для масштабной отправки целевых и персонализированных уведомлений. Для каждой PNS требуются учетные данные платформы: ключ p8 или сертификат для APNs, ключ/учетные данные сервера для FCM, SID пакета/секрет для WNS. Notification Hubs управляет массовой рассылкой (fan-out), регулированием (throttling) и управлением токенами, благодаря чему код приложения остается независимым от конкретной PNS.

Перемещение данных и потоковая аналитика

Azure Data Factory (ADF) оркестрирует интеграцию данных в гибридных средах. Среды выполнения интеграции (Integration runtimes, IR) предоставляют вычислительные ресурсы для действий: Azure IR для бессерверного копирования и потоков данных в Azure, Self-hosted IR для перемещения данных и вычислений в частных сетях без открытия входящих портов, и Azure-SSIS IR для переноса пакетов SSIS по модели lift-and-shift в управляемые кластеры. Конвейеры (Pipelines) оркестрируют действия с помощью потоков управления (зависимости, циклы, ветвления, триггеры) и параметризации для повторного использования. Потоки данных для сопоставления (Mapping Data Flows) обеспечивают масштабируемые преобразования на базе Spark без написания кода, с обработкой дрейфа схемы и контролем секционирования; используйте их для сложных преобразований, когда требуются управляемые вычислительные ресурсы. Связанные службы (Linked services) определяют метаданные подключений и учетные данные для источников, приемников и вычислительных ресурсов; наборы данных и источники/приемники потоков данных ссылаются на них, обеспечивая безопасное повторное использование и RBAC.

Event Hubs интегрируется с аналитическими службами через функцию Capture для сохранения данных в постоянное хранилище, после чего Azure Synapse или Databricks могут обрабатывать файлы Avro в виде микро-пакетов. Schema Registry упрощает десериализацию и развитие схем в потоковых заданиях за счет централизации контрактов, что позволяет избежать хрупкой, неявной типизации между производителями и потребителями.

Надежность и событийно-ориентированные шаблоны

Проектирование с учетом надежности начинается с явной обработки сбоев. Service Bus предоставляет очереди недоставленных сообщений (dead-letter queues, DLQ) для каждой сущности; потребители должны отслеживать и обрабатывать DLQ, опционально настроив автоматическую пересылку в очереди для анализа. Используйте обнаружение дубликатов и идемпотентные обработчики, чтобы избежать двойной обработки. Применяйте транзакции для атомарного завершения получения сообщений и отправки исходящих (outbox), а также используйте сеансы для упорядоченной обработки в рамках бизнес-сущности при масштабировании по сеансам. Политика повторных попыток в Event Grid использует экспоненциальную задержку (exponential backoff) с настраиваемыми ограничениями; настройте сохранение недоставленных событий в Storage для аудита и создайте инструменты для их повторной обработки. Event Hubs гарантирует доставку «как минимум один раз» (at-least-once); сохранение контрольных точек (checkpointing) через SDK (или триггеры Azure Functions) обеспечивает отслеживание прогресса для каждой секции и группы потребителей. Storage Queues полагаются на тайм-ауты видимости и шаблоны обработки «отравленных» сообщений (poison message), которые вы реализуете самостоятельно.

Событийно-ориентированная архитектура обычно использует хореографию или оркестрацию. Хореография распределяет координацию между сервисами, которые реагируют на события от других сервисов. Она слабо связана, масштабируема и устойчива к частичным сбоям, но ее может быть сложно визуализировать и контролировать, а компенсирующие операции оказываются разрозненными. Оркестрация централизует управление потоком в оркестраторе, таком как Azure Durable Functions, Logic Apps или движок рабочих процессов, улучшая наблюдаемость, логику тайм-аутов/компенсаций и шаги с участием человека ценой более тесной связи с оркестратором. Шаблон Saga реализует долгоживущие, многошаговые транзакции с компенсирующими действиями вместо двухфазных фиксаций. В хореографии каждый сервис прослушивает доменные события и при необходимости инициирует компенсации; в оркестрации оркестратор вызывает операции и запускает компенсации при сбое или тайм-ауте. В Azure реализуйте саги с помощью Durable Functions (оркестрация с сохранением состояния, повторные попытки, тайм-ауты, шаблоны компенсации) совместно с Service Bus для надежной доставки команд, или с помощью Logic Apps Standard для надежных корпоративных рабочих процессов и встроенных коннекторов.

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

Компания Contoso Retail модернизирует обработку заказов, охватывающую локальную ERP-систему, сайт электронной коммерции, мобильные приложения и последующую аналитику. Решение должно поддерживать уведомления для партнеров, анализ телеметрии в реальном времени, безопасный доступ к локальным системам и push-уведомления для мобильных устройств, со строгим порядком обработки и компенсациями для платежей и складских остатков.

  1. Прием и рабочий процесс команд
  1. Оркестрация и компенсации
  1. Событийные уведомления
  1. Потоковая передача телеметрии и аналитика
  1. Интеграция данных
  1. Управление API и партнерами
  1. Автоматизация рабочих процессов и коннекторы
  1. Гибридное подключение
  1. Мобильные push-уведомления

Этот дизайн сопоставляет каждое требование со специализированным сервисом: Service Bus для надежных команд, Durable Functions для оркестрованных саг, Event Grid для push-уведомлений, Event Hubs + Capture + Schema Registry для потоковой аналитики, ADF для гибридных ETL/ELT, APIM для управления, Logic Apps для корпоративной автоматизации, Relay для доступа к локальным системам и Notification Hubs для взаимодействия с мобильными пользователями.


Архитектура безопасности и Zero Trust · Все домены · Мониторинг

Отработать эти вопросы → · Тесты на время на 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+ языков
  • Еженедельные обновления контента
  • Награды и рефералы
  • Приоритетная поддержка
Начать бесплатную пробную версию

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

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