0Pricing
Vue Academy · 강의

마이크로 프런트엔드 아키텍처 원칙

마이크로 프런트엔드를 사용하는 이유, 팀 자율성, 독립 배포와 기술 다양성에 따른 절충점을 살펴봅니다.

마이크로 프런트엔드 아키텍처 원칙은(는) CoddyKit의 무료 Vue Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Vue Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Vue Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

마이크로 프런트엔드란 무엇인가요

마이크로 프런트엔드는 마이크로서비스의 개념을 UI에 적용한 것입니다. 대규모 앱을 독립적으로 개발하고 배포하는 여러 부분으로 나누고, 각 부분을 별도의 팀이 소유한 다음 하나의 사용자 경험으로 결합합니다.

모놀리스의 문제점

하나의 대규모 프런트엔드를 사용하면 모든 팀이 하나의 코드베이스에 커밋하고, 릴리스를 조율하며, 하나의 빌드를 공유해야 합니다. 조직이 성장하면 이는 병목이 되어 빌드 지연, 병합 충돌, 릴리스 열차와 같은 문제가 발생합니다.

원칙: 팀 자율성

핵심 개념은 처음부터 끝까지 책임지는 것입니다. 팀은 코드부터 배포까지 사용자 인터페이스의 담당 영역을 소유합니다. 자체 저장소, pipeline, 실행 환경을 갖추므로 다른 팀을 기다리지 않고 작업을 진행할 수 있습니다.

계층이 아닌 수직 슬라이스

팀은 기술 계층이 아니라 비즈니스 기능(결제, 검색, 프로필)을 기준으로 나눕니다. 각 슬라이스에는 해당 기능에 필요한 사용자 인터페이스, 처리 방식, 데이터 접근이 자체적으로 포함됩니다.

원칙: 독립 배포

각 마이크로 프런트엔드는 자체 일정에 따라 배포됩니다. 검색 팀은 결제를 건드리지 않고도 하루에 열 번 배포할 수 있습니다. 릴리스가 서로 분리되므로 위험과 조정 작업이 줄어듭니다.

원칙: 기술 다양성(선택 사항)

팀은 슬라이스마다 서로 다른 프레임워크를 선택할 수 있습니다. 실제로는 대부분의 조직이 공통 도구를 사용하기 위해 표준화합니다(예: 모두 뷰 사용). 하지만 타당한 이유가 있다면 아키텍처상 다양한 기술을 사용할 수 있습니다.

통합 방식: 빌드 시점

슬라이스를 결합하는 한 가지 방법은 빌드 시점 통합입니다. 각 마이크로 프런트엔드를 패키지로 게시하고, 컨테이너 앱이 이를 의존성으로 설치한 뒤 함께 빌드합니다.

// container package.json
{
  "dependencies": {
    "@org/checkout": "^2.1.0",
    "@org/search": "^1.4.0"
  }
}

빌드 시점 통합의 상충 관계

빌드 시점 통합은 간단하지만 릴리스를 결합합니다. 새로운 결제 버전을 배포하려면 컨테이너를 다시 빌드하고 재배포해야 합니다. 진정한 독립 배포를 할 수 없게 됩니다.

통합 방식: 실행 시점

실행 시점 통합은 브라우저에서 실행 중에 마이크로 프런트엔드를 불러옵니다. 즉, 컨테이너가 필요할 때 원격 앱의 코드를 가져옵니다. 각 원격 앱은 독립적으로 배포되며, 컨테이너는 다시 빌드하지 않아도 최신 버전을 사용합니다.

Module Federation

대표적인 실행 시점 기술은 Module Federation입니다. 이는 한 앱이 모듈을 공개하고 다른 앱이 실행 시점에 네트워크를 통해 해당 모듈을 사용하도록 하며, 공통 의존성을 공유할 수 있게 하는 빌드 기능입니다. 다음 수업에서 이를 사용하게 됩니다.

방식 선택하기

단순성과 한 번의 배포를 원하는 소규모 팀에는 빌드 시점 방식을 사용하십시오. 독립 배포와 팀 자율성을 우선하고 추가적인 운영 복잡성을 감수할 수 있다면 실행 시점 방식(Module Federation)을 사용하십시오.

빠른 확인

마이크로 프런트엔드 원칙을 이해했는지 확인해 보십시오.

복습

마이크로 프런트엔드의 원칙을 배웠습니다.

  • 큰 사용자 인터페이스를 독립적으로 소유하고 배포하는 슬라이스로 나누어 사용자에게 조합해 제공합니다.
  • 팀 자율성: 수직적인 비즈니스 슬라이스를 처음부터 끝까지 책임집니다.
  • 독립 배포: 각 슬라이스가 자체 일정에 따라 배포됩니다.
  • 기술 다양성은 선택 사항이며, 대부분의 팀은 표준화합니다.
  • 통합 방식은 빌드 시점(간단하지만 릴리스가 결합됨) 또는 실행 시점(Module Federation을 사용하며 진정한 독립성을 제공함)입니다.

자주 묻는 질문

“마이크로 프런트엔드 아키텍처 원칙” 강의는 무료인가요?

네 — “마이크로 프런트엔드 아키텍처 원칙” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Vue Academy 강의 전체를 잠금 해제할 수 있습니다. Vue Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“마이크로 프런트엔드 아키텍처 원칙”에서 뭘 배우나요?

마이크로 프런트엔드를 사용하는 이유, 팀 자율성, 독립 배포와 기술 다양성에 따른 절충점을 살펴봅니다. 브라우저에서 직접 실행하는 실습 코드로 Vue Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Vue Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Vue Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.

“마이크로 프런트엔드 아키텍처 원칙” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Vue Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Vue Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 마이크로 프런트엔드 아키텍처 원칙
  2. Vue에서 Webpack Module Federation 사용
  3. Vite Federation 플러그인
  4. 마이크로 프런트엔드 간 상태 공유
← Vue Academy(으)로 돌아가기