Участник:Gorvzavodru/Микрофронтенд

Материал из Циклопедии
Перейти к навигации Перейти к поиску

Микрофронтенд (Microfrontend, МФ[1]) — подход к разработке веб-приложений, основанный на концепции микросервисов[2].

Общая информация[править]

Растущий тренд на переход к микрофронтенду обусловлен 4 объективными техническими преимуществами подхода[3]:

  • масштабируемость (разделение большого приложения на более мелкие части позволяет легко масштабировать команды и процессы)
  • независимость разработки (команды могут работать над разными частями независимо, что ускоряет разработку и выпуск новой функциональности)
  • технологическая гибкость (можно использовать разные технологии и фреймворки для разных частей приложения, выбирая наиболее подходящие для каждой задачи)
  • упрощение обновлений (обновления могут производиться для отдельных частей приложения без необходимости переразвертывания всего приложения)

Есть несколько разных подходов в построении микрофронтендов[4]:

  • один микрофронтенд на каждый микросервис
  • компоненты
  • использование специальных инструментов для микрофронтенда
  • Module Federation

Также упоминаются подходы[5]:

К недостаткам использования микрофронтенда могут быть отнесены[6]:

  • более сложная подготовка (перед разработкой микрофронтенд решения команде необходимо определиться с его архитектурой, процессами взаимодействия с backend-частью, использованием компонентов)
  • больше ресурсов для поддержания работы приложения (при обновлении повторно используемых компонентов придётся повторно развернуть каждый модуль в решении)
  • более сложное сквозное тестирование (потребуется выравнивания нагрузки и масштабное сквозное тестированиея, чтобы убедиться, что все отдельные блоки вписываются в окончательный проект)
  • большое разнообразие стандартов (большее количество фреймворков и языков, используемых в проекте, означает большее количество требований, которые нужно учитывать)
  • необходимость актуальной документации (без актуальной документации разобраться во всей системе будет крайне сложно)
  • добавленное макроуправление (прозрачное общение и система отчетности, являются обязательными для обеспечения бесперебойной работы всей команды)

См. также[править]

Источники[править]