Официальный источник
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 и поэтапная миграция с монолита.
ОригиналОсновной тезис
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
- Определить доменные срезы и карту ownership между командами.
- Создать shell и зафиксировать минимальные contracts: navigation, identity, telemetry, design tokens.
- Переводить legacy UI по шагам через strangler pattern, начиная с наименее рискованных зон.
- Ввести contract tests и consumer-driven проверки между micro-frontends.
- Отстроить 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-подхода.
- Нулевая прозрачность эксплуатационных метрик на уровне каждого модуля.
