Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про Webpack: webpack, micro frontends, module federation

Работал ли с Module Federation?

Вопрос проверяет знакомство с современными архитектурными подходами для построения микросервисных frontend-приложений (Micro Frontends).

Короткий ответ

Module Federation — это технология, встроенная в Webpack 5, которая позволяет нескольким независимым JavaScript-приложениям динамически импортировать код друг у друга во время выполнения. Это основа для архитектуры Micro Frontends. Она позволяет разбить одно большое приложение (монолит) на более мелкие, автономные части, которые могут разрабатываться, развертываться и обновляться независимо друг от друга, но при этом работать как единое целое в браузере пользователя.

Длинный ответ

Module Federation кардинально меняет подход к сборке и организации крупных frontend-проектов.

Как это работает:

  • Есть два типа приложений: Host (хост, основное приложение) и Remote (удаленное приложение, микросервис).

  • Remote-приложение компилируется и exposes (предоставляет) некоторые свои модули (компоненты, хуки) для внешнего использования.

  • Host-приложение компилируется с конфигурацией, которая указывает, откуда (какой URL) и какие модули можно будет подгрузить.

  • Во время выполнения (in browser) Host-приложение динамически загружает необходимый код с Remote-приложения и использует его как будто это его собственный модуль.

Преимущества:

  1. Независимость команд: Каждая команда может разрабатывать свою часть приложения на своем стеке (React, Vue, Angular) и с своим циклом выпуска версий.

  2. Независимые деплои: Можно обновить одну часть приложения (микросервис), не передеплоивая все остальное.

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

  4. Общие зависимости: Технология умеет делиться общими зависимостями (например, react, react-dom), чтобы не загружать их несколько раз.

Пример использования:
Хост-приложение (сайт-портал) динамически подгружает виджет корзины из совершенно другого приложения, которое разрабатывает и деплоит отдельная команда.

Вывод:
Module Federation — это мощный инструмент для масштабирования разработки и организации работы нескольких команд над одним крупным продуктом, позволяющий реализовать архитектуру Micro Frontends.

Уровень

  • Рейтинг:

    2

  • Сложность:

    6

Навыки

  • Webpack

    Webpack

Ключевые слова

#webpack

#micro frontends

#module federation

Подпишись на React Developer в телеграм