피드로 돌아가기
Desconstruindo o Build: A Revolução do Angular (E a diferença entre Compilador e Bundler)
Dev.toDev.to
Frontend

Webpack에서 Esbuild 및 Vite 전환을 통한 Build 및 HMR 성능 극대화

Desconstruindo o Build: A Revolução do Angular (E a diferença entre Compilador e Bundler)

Erick Gabriel dos Santos Alves2026년 6월 4일4intermediate

Context

Angular 16 기반의 YMS 프로젝트에서 Webpack의 모놀리식 빌드 방식으로 인한 느린 컴파일 및 Hot Reload 발생. 대규모 엔터프라이즈 애플리케이션 특성상 수천 개의 파일을 전수 추적 및 패키징해야 하는 구조적 병목 존재.

Technical Solution

  • Go 언어 기반의 Esbuild 도입을 통한 멀티코어 병렬 처리 기반의 의존성 빌드 가속화
  • Native ES Modules를 활용하여 브라우저 요청 시점에 필요한 파일만 전송하는 Vite의 On-demand 로딩 방식 적용
  • 전체 애플리케이션 선빌드 방식에서 필요한 모듈만 즉시 컴파일하는 Lazy-loading 개발 서버 구조로 전환
  • Ivy 컴파일러는 유지하되, 빌드 아티팩트를 처리하는 Bundler 계층을 교체하여 오버헤드 제거
  • HMR 최적화를 통해 상태 유지와 동시에 부분적인 스타일 및 로직 업데이트 가능 구조 설계

1. 프로젝트 규모 확장에 따라 전체 빌드 시간이 증가한다면 Bundler의 병렬 처리 지원 여부 검토

2. Dev mode에서 Native ESM 지원 가능 여부를 확인하여 On-demand 로딩 도입 검토

3. 컴파일러 교체와 빌드 툴 체인 교체를 구분하여 병목 지점이 '코드 변환'인지 '파일 패키징'인지 분석

원문 읽기