IT기술· 5분 읽기
🚀

Vite 6 Rolldown 번들러 전환기 — Rollup 대비 빌드 속도 3배 개선 벤치마크

Vite 6 Rolldown 번들러 전환 실전. Rust 기반 Rolldown 도입 후 빌드 시간 3배 단축 체감. 마이그레이션 체크리스트와 호환성 이슈.

Vite 6 Rolldown 번들러 전환기 — Rollup 대비 빌드 속도 3배 개선 벤치마크

Vite 6가 프로덕션 빌드 번들러를 기존 Rollup에서 Rust 기반 Rolldown으로 교체하면서 빌드 성능이 극적으로 개선됐습니다. 실전 전환 경험을 정리합니다.

Rolldown 소개

  • Rust 기반: Rollup API 호환 + 네이티브 속도
  • esbuild 대체 아님: 트리쉐이킹·플러그인 생태계는 Rollup 호환 유지
  • Vite 6부터 opt-in: --experimental-rolldown 플래그

벤치마크 (실제 프로젝트)

Next.js 아니지만 React+Vite 기반 150컴포넌트 프로젝트:

지표Vite 5 (Rollup)Vite 6 (Rolldown)
콜드 빌드42초14초
증분 빌드8초3초
번들 사이즈780KB785KB
메모리 peak1.2GB700MB

빌드 시간 3배 단축, 메모리 40% 감소. 번들 결과물 품질은 동일.

전환 체크리스트

1단계: Vite 6 업그레이드

bash
npm install vite@^6 --save-dev

2단계: Rolldown 활성화

vite.config.ts:

ts
export default defineConfig({
  build: {
    rollupOptions: {
      // Rolldown 호환 옵션만 사용
    },
  },
  // experimental 플래그
  experimental: {
    rolldown: true,
  },
})

또는 CLI: vite build --experimental-rolldown

3단계: 플러그인 호환성 확인

  • 공식 플러그인(@vitejs/*): 전부 호환
  • 커뮤니티 플러그인: 80% 호환. Rollup v3 API 의존 플러그인은 패치 필요
  • 자체 플러그인: transform·load 훅 대부분 그대로 동작

4단계: 출력 비교

bash
# Rollup 버전
vite build && du -sh dist/

# Rolldown 버전
vite build --experimental-rolldown && du -sh dist/

번들 크기 차이 5% 이내 정상. 더 크게 차이나면 설정 재검토.

알려진 호환성 이슈

  1. 1CJS 플러그인: 일부 ESM 강제 변환 시 에러 → 플러그인 옵션 조정
  2. 2sourcemap 미세 차이: 라인 번호 맵핑 일부 다름. 디버깅 시 최신 버전으로
  3. 3dynamic import 청크 이름: 해시 알고리즘 다름. 캐시 무효화 한 번 필요

되돌리기

문제 발생 시 --experimental-rolldown 플래그만 빼면 즉시 Rollup 복귀. 설정 파일 변경 없이 롤백 가능.

마무리

Rolldown은 아직 experimental이지만 대부분 프로젝트에서 안정적으로 동작합니다. 빌드 시간에 민감한 모노레포·대형 SPA는 즉시 전환 고려 가치. 라이브러리 개발 프로젝트는 Rollup 유지하며 추이 관찰이 안전합니다. 2026 하반기 정식 릴리즈 예정.

🔧 이 글과 관련된 무료 도구

이 글과 관련된 상품 (Vite6)[광고/제휴]

이 포스팅은 쿠팡 파트너스, 아마존 어소시에이트, 알리익스프레스 제휴 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다. 이는 상품 가격에 영향을 주지 않습니다.
As an Amazon Associate, Coupang Partner, and AliExpress affiliate, I earn from qualifying purchases at no extra cost to you.

관련 글