피드로 돌아가기
Dev.toFrontend
원문 읽기
Rolldown 통합으로 빌드 속도 최대 30배 향상 및 환경 일관성 확보
Vite 8 Plus Rolldown: Migrating Your Project to the Rust-Powered Bundler and What Breaks
AI 요약
Context
Dev 모드의 esbuild와 Prod 모드의 Rollup을 혼용하던 Dual Bundler 구조로 인해 환경 간 동작 불일치 문제 발생. 특히 Plugin 실행 순서와 Module Resolution 방식의 차이로 인한 Production 전용 버그 수정에 과도한 리소스 소모.
Technical Solution
- Rust 기반 단일 Bundler인 Rolldown 도입을 통한 Dev/Prod 빌드 파이프라인 통합
- 단일 코드 경로(Single Code Path) 구현으로 환경 간 결정론적(Deterministic) 동작 보장
- Rollup Plugin API Surface를 유지하며 내부 구현을 Rust로 재작성하여 JS 런타임 오버헤드 제거
- build.esbuildOptions를 build.rolldownOptions로 통합하여 설정 인터페이스 단일화
- Module Graph 생성 및 Transform 파이프라인을 단일 엔진으로 처리하여 일관된 모듈 해석 수행
Impact
- Production 워크로드 기준 빌드 속도 10배에서 30배 향상
실천 포인트
- 프로젝트 내 esbuild 전용 Plugin(onLoad, onResolve hooks) 사용 여부 전수 조사 - Rollup 내부 API(ModuleInfo, PluginContext)에 의존하는 커스텀 Plugin의 호환성 검증 - build.esbuildOptions 설정을 build.rolldownOptions로 마이그레이션 - Symlinks 및 package.json exports 필드 관련 Module Resolution 동작 변경 사항 테스트