System Design Space

    Глава 192

    Обновлено: 16 февраля 2026 г. в 03:00

    Building Micro-Frontends (short summary)

    Прогресс части0/12

    Официальный источник

    Building Micro-Frontends

    Практическая книга Luca Mezzalira про архитектуру, delivery model и scaling frontend-команд через micro-frontends.

    Открыть страницу книги

    Building Micro-Frontends

    Авторы: Luca Mezzalira
    Издательство: O'Reilly Media, 2021
    Объём: 334 страницы

    Luca Mezzalira о практиках масштабирования frontend-команд: доменные границы, composition, governance и поэтапная миграция с монолита.

    Building Micro-Frontends — оригинальная обложкаОригинал

    Основной тезис

    Micro-frontends работают, когда организация проектирует фронтенд как систему продуктовых доменов, а не как монолитный SPA с одной точкой релиза. Книга подчеркивает, что техническая декомпозиция должна идти вместе с декомпозицией ownership, CI/CD и operational-практик.

    Четыре столпа

    Domain Ownership

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

    Independent Delivery

    Каждая команда выпускает свой micro-frontend автономно, без синхронного релиза всего портала.

    Contract First Integration

    Интеграция строится на стабильных контрактах (routing, auth, events, shared APIs), а не на неявных договоренностях.

    Platform Governance

    Нужен тонкий платформенный слой: стандарты, quality gates и правила изменений без бюрократического bottleneck.

    Варианты композиции

    Client-side composition

    Shell загружает удаленные модули в рантайме. Максимум автономии, но нужен строгий контроль производительности и зависимостей.

    Server-side composition

    Сборка страниц на edge/server уровне до рендера в браузере. Проще с SEO и first paint, но выше сложность backend orchestration.

    Build-time integration

    Модули объединяются на стадии сборки. Низкий порог входа, но меньше независимости команд при релизе.

    Пошаговый rollout

    1. Определить доменные срезы и карту ownership между командами.
    2. Создать shell и зафиксировать минимальные contracts: navigation, identity, telemetry, design tokens.
    3. Переводить legacy UI по шагам через strangler pattern, начиная с наименее рискованных зон.
    4. Ввести contract tests и consumer-driven проверки между micro-frontends.
    5. Отстроить observability пер домен: ошибки, latency, business KPIs, release health.

    Что важно организационно

    Engineering platform

    • Единые CI templates, quality checks и release policy.
    • Общая observability-модель для всех micro-frontends.
    • Совместимый design system и token pipeline.

    Governance без перегруза

    • RFC/ADR для изменений shared contracts.
    • Ownership matrix по доменам и SLA на shared parts.
    • Явный deprecation процесс вместо внезапных breaking changes.

    Антипаттерны

    • Деление micro-frontends по фреймворкам вместо бизнес-контекстов.
    • Глобальная shared-библиотека, которая блокирует релизы всех команд.
    • Отсутствие единых правил версионирования и backward compatibility.
    • Big-bang миграция вместо постепенного strangler-подхода.
    • Нулевая прозрачность эксплуатационных метрик на уровне каждого модуля.

    Связанные главы