pile·
프론트엔드·vercel-blogVercel Blog·

Turbopack — Webpack 창시자가 만든 Rust 기반 차세대 번들러

Vercel이 2022년 10월 Turbopack을 공개했다. Webpack 창시자 Tobias Koppers가 제작한 Rust 기반 번들러로, 5,000개 모듈 애플리케이션 기준 Webpack 대비 업데이트 700배 빠르고 Vite(SWC) 대비 콜드 스타트를 4초 vs 16.6초로 줄인다. 함수 단위 증분 메모이제이션 프레임워크 Turbo 위에 구축됐다.

핵심 포인트
  • Webpack 대비 업데이트 700배 빠름, Vite(SWC) 대비 5,000모듈 앱 콜드 스타트 4초 vs 16.6초
  • Rust 기반 증분 메모이제이션 프레임워크 Turbo 위에 구축 — 입력 불변 시 함수 결과 재사용
  • React Server Components, TypeScript, JSX, CSS 번들링, HMR 기본 지원
  • Turborepo, Google Bazel에서 영감 받은 함수 단위 캐싱 설계
상세 정리
  • 배경: JavaScript 번들러(Webpack)는 JS로 작성돼 대규모 코드베이스에서 속도 한계. Vercel은 이전에 Babel→SWC 전환으로 트랜스파일 17배, Terser→SWC minifier로 압축 6배를 달성했고, 번들러 자체를 Rust로 재작성하는 Turbopack으로 이어짐.
  • 성능 수치: 5,000개 모듈 기준 Cold start — Turbopack 4초 vs Vite(SWC) 16.6초. 파일 수정 후 업데이트 반영 — Webpack 대비 700배 빠름. 대규모 앱일수록 격차가 커지는 구조.
  • Turbo 프레임워크: 함수 단위 캐싱을 지원하는 Rust 오픈소스 증분 메모이제이션 프레임워크. 함수 입력이 바뀌지 않으면 이전 결과를 재사용해 불필요한 재연산을 방지. Turborepo와 공유하는 기반 기술.
  • 설계 영감: 증분 빌드의 선구자인 Google Bazel과 Turborepo 접근법 차용. 파일 단위가 아닌 함수 단위 캐싱으로 세밀한 증분성 확보.
  • 창시자: Webpack 원작자 Tobias Koppers가 Vercel에 합류해 제작. 기존 도구의 한계를 직접 설계한 인물이 차세대 도구를 만든 것.
  • 초기 기능 범위: React Server Components 네이티브 지원, TypeScript + JSX, CSS 번들링, HMR. 현재는 개발 서버 위주.
  • 향후 계획: 프로덕션 빌드 통합, Vercel Remote Caching을 통한 팀 단위 빌드 캐시 공유, 기존 Webpack 사용자를 위한 점진적 마이그레이션 경로 제공 예정.
왜 읽나대규모 Next.js/React 코드베이스에서 번들링 속도 병목을 겪거나, Rust 기반 빌드 도구의 증분 메모이제이션 설계 원리에 관심 있는 프론트엔드/풀스택 엔지니어에게 유용.
vercel-blog
Vercel Blog 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 프론트엔드·LINE EngineeringLINE Engineering·

    AI로 웹 엔지니어 없이 LINE 앱 안에서 그룹 영상 통화 서비스 만들기

    LINE Planet 팀의 PM과 Android 엔지니어 두 명이 웹 전문 엔지니어 없이 LINE 앱 내에서 그룹 영상 통화 서비스를 개발한 과정을 다룬다. LIFF(LINE Front-end Framework)와 LINE Planet SDK를 활용해 React/Vite 기반 웹 앱을 구성했고, Firebase Cloud Functions로 별도 서버 인프라 없이 구현을 완료했다.

    #react#webrtc#firebase+2