본문 바로가기
Frontend2026년 5월 23일2분 읽기

Turbopack stable — Next 17 production 빌드 5분→47초 사례

YS
김영삼
조회 73
Turbopack stable — Next 17 production 빌드 5분→47초 사례

핵심 요약

Turbopack 정식 출시 후 사내 Next 17 모노레포 전환. dev HMR 평균 1.4s → 180ms, production 빌드 5분 → 47초. Loader 호환, CSS-in-JS, 일부 plugin은 여전히 막힘 — 사후 정리.

1. 켜는 법

{
  "scripts": {
    "dev": "next dev --turbo",
    "build": "next build --turbo"
  }
}

옵트인 끝. 동작 안 하는 loader는 빌드 로그에서 명시.

2. 실측

지표WebpackTurbopack
dev 시작19s3.2s
HMR(저장→화면)1.4s180ms
prod 빌드5m 02s47s
캐시 hit 빌드1m 48s12s

3. 호환 문제

  • styled-components SSR — 17.1+에서 공식 지원, 그 전 hydration 미스매치
  • @svgr/webpack — Turbopack 자체 SVG loader로 대체
  • raw-loader, mdx-bundler — config 다름, next.config.mjs 분기 처리
  • sentry-cli source map — postbuild script로 후처리

4. 캐시 전략

CI에서 .next/cache/turbopack 디렉토리 영속화 시 두 번째 빌드 12s. GitHub Actions cache action에서 hash 키로 next.config.mjs + package-lock.json.

5. 함정

  • custom webpack config — next.config.mjs의 webpack() 함수는 무시됨, 명시 마이그레이션
  • Module Federation — 미지원, 17.2 로드맵
  • Babel plugin — SWC 대체 필요, .babelrc 자동 무시
  • 에러 메시지 형식 변경 — 모니터링 alert 정규식 수정

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록