발행일

패스트 캠퍼스 챌린지 5일차 미션 (2월 5일) : 마이크로 FE 강의 후기

패스트 캠퍼스 챌린지 5일차 미션 (2월 5일) : 마이크로 FE 강의 후기

이 글은 네이버 블로그에 2025년 2월 5일에 올렸던 것을 그대로 옮겨온 것입니다.

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

[ 마이크로 프론트엔드(MFA:Micro Frontend Architecture) : 대규모 서비스 설계부터 운영까지 (feat.모노레포&모듈페더레이션)

1. 공부 시작 시각

image

2. 공부 종료 시각

image

3. 클립 1번 수강 인증 사진

image

4. 클립 2번 수강 인증 사진

image

5. 학습 인증샷 1장

image

6. 학습 후기 700자

마이크로 프론트엔드를 규정하는 가장 중요한 요소에 대한 고찰

마이크로 프론트엔드는 마이크로서비스 아키텍처의 철학을 프론트엔드 개발에 적용한 개념으로, 현대적인 웹 애플리케이션의 복잡성을 관리하는 중요한 방법론 중 하나다. 이를 효과적으로 구현하기 위해서는 몇 가지 핵심 요소가 필요하며, 그중 가장 중요한 요소는 독립성(Independence), 기술 선택의 자유(Freedom of Technology), 통합 전략(Integration Strategy), 그리고 배포 및 운영의 독립성(Deployment & Operations Independence)이라고 생각한다.

  1. 독립성(Independence)

마이크로 프론트엔드의 가장 중요한 특징은 독립적인 개발, 배포, 그리고 실행이 가능하다는 점이다. 각 마이크로 프론트엔드는 특정 도메인 또는 기능을 담당하며, 다른 부분과 느슨하게 결합되어 있다. 이를 통해 팀 단위로 기능을 빠르게 개발하고, 장애가 발생하더라도 전체 애플리케이션이 아닌 일부 기능만 영향을 받도록 할 수 있다. 이는 대규모 애플리케이션에서 필수적인 요소이며, 특히 여러 팀이 협업하는 환경에서 강력한 장점을 발휘한다.

  1. 기술 선택의 자유(Freedom of Technology)

마이크로 프론트엔드는 각 팀이 자신에게 가장 적합한 기술을 선택할 수 있도록 한다. 기존의 모놀리식 프론트엔드에서는 프레임워크가 고정되고, 전체 애플리케이션이 같은 기술 스택을 따라야 하는 제약이 있었다. 그러나 마이크로 프론트엔드를 사용하면 특정 기능은 React, 다른 기능은 Vue 또는 Angular로 구현할 수도 있다. 이는 장기적으로 기술 스택의 유연성을 유지하는 데 도움이 된다. 하지만 무분별한 기술 선택은 유지보수를 어렵게 만들 수 있으므로, 일정 수준의 가이드라인과 표준을 마련해야 한다.

  1. 통합 전략(Integration Strategy)

독립적으로 개발된 마이크로 프론트엔드를 하나의 완전한 애플리케이션으로 결합하는 과정은 매우 중요하다. 대표적인 통합 방식으로는 서버 사이드 컴포지션(Server-side Composition), 클라이언트 사이드 컴포지션(Client-side Composition), Edge-side Includes(ESI), 그리고 Web Components 기반의 통합이 있다.

  • 서버 사이드 컴포지션은 초기 렌더링 속도가 빠르지만, 프론트엔드 개발자의 자유도가 제한될 수 있다.
  • 클라이언트 사이드 컴포지션은 유연성이 뛰어나지만 초기 로딩 속도가 느려질 수 있다.
  • Web Components 기반의 통합은 각 마이크로 프론트엔드를 완전한 블랙박스로 유지하면서도 유연한 결합이 가능하게 한다.
  • 이러한 통합 전략을 적절히 선택해야 전체적인 사용자 경험을 해치지 않으면서도 마이크로 프론트엔드의 장점을 극대화할 수 있다.
  1. 배포 및 운영의 독립성(Deployment & Operations Independence)

마이크로 프론트엔드는 각 부분이 독립적으로 배포될 수 있어야 한다. 이를 통해 특정 기능만 빠르게 개선하거나 롤백할 수 있는 유연성이 확보된다. 특히 CI/CD 파이프라인을 각 마이크로 프론트엔드 단위로 운영하면 개발 속도를 크게 향상시킬 수 있다. 또한 마이크로 프론트엔드를 별도의 도메인 또는 서브 도메인으로 호스팅하는 것도 고려할 수 있으며, 이를 통해 트래픽 분산과 보안성을 높일 수 있다.

결론

마이크로 프론트엔드는 대규모 웹 애플리케이션을 효과적으로 관리하기 위한 강력한 접근 방식이지만, 제대로 구현하지 않으면 기존 모놀리식 구조보다 더 큰 복잡성을 초래할 수도 있다. 따라서 독립성을 유지하면서도 기술 선택의 자유를 조화롭게 활용하고, 효율적인 통합 전략을 마련하며, 배포 및 운영을 독립적으로 할 수 있도록 설계하는 것이 가장 중요하다.

> 필수 URL https://bit.ly/4gL1f1o

#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완