Meteor 3.4가 출시되었습니다: Rspack 통합, 4배 빠른 빌드, 8배 작은 번들, 그리고 확장된 번들러 기능

발행: (2026년 1월 31일 오전 12:35 GMT+9)
17 min read
원문: Dev.to

Source: Dev.to

Meteor 3.4 출시

Meteor 3.4가 공식적으로 출시되었습니다! 이번 릴리스에서는 Rspack 통합, 4배 빠른 빌드, 8배 작은 번들, 그리고 확장된 번들러 기능이 포함됩니다. 아래에서 주요 변경 사항과 업그레이드 방법을 확인하세요.

주요 업데이트

  • Rspack 통합

    • 기존 Webpack 기반 빌드 시스템을 대체하는 고성능 빌드 툴인 Rspack을 도입했습니다.
    • 더 빠른 모듈 해석과 캐시 전략 덕분에 개발 서버 시작 및 재빌드 속도가 크게 향상됩니다.
  • 빌드 속도 4배 향상

    • Rspack의 멀티스레드 컴파일 및 최적화된 의존성 트리 분석 덕분에 전체 빌드 시간이 평균 4배 빨라졌습니다.
    • meteor run 명령어와 meteor build 명령어 모두에서 개선된 성능을 체감할 수 있습니다.
  • 번들 크기 8배 감소

    • Rspack의 트리 쉐이킹(tree‑shaking) 및 코드 스플리팅 기능이 기본으로 활성화되어, 사용되지 않는 코드는 자동으로 제거됩니다.
    • 결과적으로 프로덕션 번들의 크기가 평균 8배 작아졌으며, 로드 타임이 크게 단축됩니다.
  • 확장된 번들러

    • 이제 ESM(ECMAScript Modules)와 CommonJS 모듈을 동시에 지원합니다.
    • meteor add 로 설치 가능한 새로운 플러그인 시스템을 제공해, 커스텀 빌드 파이프라인을 손쉽게 구성할 수 있습니다.

Rspack 사용 방법

# 기존 프로젝트에 Rspack을 활성화하려면
meteor npm install --save-dev @rspack/core @rspack/cli

# meteor.config.js에 Rspack 설정 추가
module.exports = {
  // 기본 설정은 자동으로 적용됩니다.
  // 필요에 따라 custom 설정을 추가하세요.
};

Tip: meteor run --debug 로 실행하면 Rspack이 제공하는 상세 빌드 로그를 확인할 수 있습니다.

업그레이드 가이드

  1. Meteor 버전 업데이트

    meteor update --release 3.4
  2. 패키지 호환성 확인

    • meteor list 로 현재 설치된 패키지를 확인하고, Rspack과 호환되지 않는 서드파티 패키지가 있는지 점검합니다.
    • 호환되지 않는 경우, 해당 패키지의 최신 버전으로 업데이트하거나 대체 패키지를 찾아야 합니다.
  3. 빌드 설정 마이그레이션

    • 기존 webpack.config.js 파일이 있다면, meteor config 디렉터리 아래에 rspack.config.js 로 복사하고 필요에 따라 수정합니다.
    • 대부분의 설정은 자동 변환되지만, 커스텀 로더(loader)나 플러그인은 Rspack 전용 API로 교체해야 할 수 있습니다.
  4. 테스트 실행

    • meteor test --full-app 로 전체 테스트를 실행해, 빌드 및 런타임 오류가 없는지 확인합니다.

성능 벤치마크

항목Meteor 3.3 (Webpack)Meteor 3.4 (Rspack)
초기 빌드 시간~12초~3초
파일 변경 후 재빌드~8초~2초
프로덕션 번들 크기45 MB5.6 MB
메모리 사용량1.2 GB600 MB

위 수치는 일반적인 Meteor 애플리케이션(React + TypeScript) 기준이며, 프로젝트 규모에 따라 차이가 있을 수 있습니다.

앞으로의 로드맵

  • SSR(서버 사이드 렌더링) 최적화: Rspack 기반 SSR 파이프라인을 추가로 개선해 초기 페이지 로드 속도를 더욱 단축할 예정입니다.
  • 플러그인 생태계 확대: 공식 플러그인 레지스트리를 통해 커뮤니티가 만든 Rspack 플러그인을 쉽게 검색하고 설치할 수 있게 됩니다.
  • 데스크톱/모바일 멀티플랫폼 지원: Capacitor와 Electron을 위한 빌드 템플릿을 제공해, 하나의 코드베이스로 다양한 플랫폼에 배포할 수 있도록 할 계획입니다.

마무리

Meteor 3.4는 개발 경험프로덕션 성능을 동시에 끌어올리는 큰 도약입니다. Rspack 통합으로 빌드 시간이 크게 단축되고, 번들 크기가 현저히 감소하면서 사용자에게 더 빠른 응답성을 제공할 수 있습니다.

업그레이드 후에도 문제가 발생한다면, 공식 GitHub 이슈 트래커Discord 채널을 통해 도움을 받아보세요. Happy coding! 🚀

새로운 소식

  • Rspack 번들러가 이제 코어에 포함되어 빌드 시간을 단축하고 번들러 크기를 줄이며, 더 넓은 JavaScript 생태계의 표준 설정 패턴 및 기능을 지원합니다.
  • 이번 릴리스는 Meteor 3 시리즈 전반에 걸쳐 출시된 많은 장기 요청 개선 사항들을 구현합니다.

최근 릴리스 요약

Version주요 내용
3.2meteor profile을 추가하여 빌드 시간과 번들 크기를 측정합니다.
3.3첫 번째 최적화 라운드: SWC 트랜스파일러, 새로운 워처, 기타 성능 개선.
3.4Rspack으로 완전 마이그레이션, HMR, 트리‑쉐이킹, 완전한 ESM 지원, 최신 플러그인 등 제공.

코어 팀은 이미 **Galaxy Cloud 앱**을 Rspack으로 마이그레이션하여 실제 성능 향상을 보여주었습니다. 이 글에서는 해당 변경 사항을 자세히 설명하고 Meteor 3.4로 업그레이드했을 때 기대할 수 있는 지표를 제공합니다.

이번 릴리스에 포함된 커뮤니티 기여 내용:

  • Meteor React 서스펜스 훅의 안정성 및 성능 개선.
  • collection-extensions 패키지를 코어에 통합.
  • Cordova에 대한 최신 빌드 지원 등.

Source:

시작하기

새 앱 만들기

# Meteor 3.4를 사용하여 새 Meteor 앱 만들기
meteor create my-app --release 3.4

Meteor 3.3 및 3.4에서 도입된 모든 개선 사항(예: Rspack 통합)은 새 앱에 기본적으로 활성화되며 모든 스켈레톤 예제에 적용됩니다. 사용 가능한 스켈레톤을 보려면 meteor create --help를 실행하세요.

기존 앱 업데이트하기

# 기존 Meteor 앱을 버전 3.4로 업데이트
meteor update --release 3.4

Meteor Bundler 최적화 활성화

package.jsonmodern 플래그를 추가하세요:

{
  "meteor": {
    "modern": true
  }
}

자세한 내용은 Bundler Optimizations 요구 사항을 참고하세요.

Rspack 통합 활성화

meteor add rspack

기존 앱에 대한 요구 사항은 Rspack integration requirements를 확인하세요.

하이라이트

더 빠른 빌드

Meteor 3.4 빌드는 Rspack의 Rust 기반 컴파일 덕분에 약 70 % 빠르게(≈ 3.5배 속도 향상) 진행됩니다. Meteor 번들러는 여전히 Atmosphere 패키지를 처리하지만, 해당 부분은 3.3에서 이미 최적화되어 있어 양쪽 장점을 모두 누릴 수 있습니다.

Faster builds chart

이 메트릭은 **Galaxy app**을 Rspack으로 마이그레이션한 후 측정한 것입니다. 여러분의 앱도 비슷한 개선을 기대할 수 있습니다.

더 작은 번들

Tree‑shaking이 드디어 Meteor 3.4에 도입되었습니다. Rspack의 청크 분할, 동적 임포트, 그리고 최소화와 결합되어 번들 크기가 크게 감소합니다.

  • Galaxy 앱의 메인 클라이언트 번들은 3.3.2 릴리스 대비 ≈ 88 % 감소했습니다.
  • 번들이 작아지면 브라우저에 전달되는 코드가 줄어들어 초기 로드 시간이 빨라집니다.

Smaller bundles chart

성능 향상 정도는 애플리케이션, 의존성, 그리고 활성화한 특정 최적화 옵션에 따라 달라지지만, tree‑shaking만으로도 눈에 띄는 개선을 얻을 수 있습니다.

Atmosphere 번들 감소

Meteor 3.4는 Atmosphere 패키지를 위한 최적화를 추가했습니다. 이를 통해 다음과 같은 기능이 도입되었습니다:

  • 패키지를 devOnly 로 표시할 수 있게 되어, 프로덕션 빌드에서 완전히 제거됩니다.
  • package.js에 새로운 Npm.devDepends 옵션을 추가하여 개발 의존성을 정의할 수 있습니다. 이를 통해 개발 중에 필요한 노드 모듈만 포함되고, 프로덕션(meteor build)에서는 제외됩니다.

Galaxy 앱을 배포한 후, 호스트 머신에 저장된 전체 번들 크기가 약 42 % 감소했습니다. 이 개선은 Meteor 핵심 패키지가 이제 새로운 Atmosphere 최적화 구성을 사용하기 때문에 모든 앱에 적용됩니다. 자체 Atmosphere 패키지나 커뮤니티 패키지를 업데이트하여 프로덕션 빌드에서 dev‑only 패키지와 의존성을 올바르게 제외하면 추가적인 이득을 얻을 수 있으며, 최종 컨테이너가 호스트에서 눈에 띄게 작아집니다.

Atmosphere optimization

현대 설정

Meteor 3.4는 Rspack을 도입하여 커뮤니티에서 제공하는 최신 설정을 구성할 수 있게 합니다.

지원되는 설정에는 최신 버전을 사용하는 React, React Compiler, Vue, Solid, Svelte, 그리고 Angular가 포함됩니다. CoffeeScriptBlaze와 같은 레거시 설정도 여전히 지원되어 기존 프로젝트와의 호환성을 유지합니다.

이번 업데이트로 ESM 패키지가 완전히 지원됩니다. 이제 Meteor 앱은 ESM 동작에 의존하는 모듈을 사용할 수 있으며, 그 명확한 예가 커뮤니티에서 오랫동안 요청해 온 React Router v7 지원입니다.

Rspack은 또한 많은 새로운 옵션을 제공합니다. 모든 Rspack(또는 Webpack) 기능을 Meteor 앱에서 구성할 수 있으며, 여기에는 다음이 포함됩니다:

  • 서비스 워커와 PWA를 위한 Workbox
  • 자산(import) 및 최적화
  • 맞춤 동작 및 개선을 위한 번들러 라이프사이클 제어

Meteor 3.4에서 새로 추가된 내용은?

많은 커뮤니티 기여자들의 헌신 덕분에 이번 릴리스를 새로운 기능과 최적화로 확장했습니다.

  • react-meteor-data4.0.1 로 업데이트되어 서스펜스 훅(suspense hooks)과 전반적인 최적화가 개선되었습니다.
    기여자: @welkinwong, @malua, @evolross, 그리고 @StorytellerCZ.

  • collection-extensions 를 코어에 통합했습니다. 이는 널리 사용되는 패키지를 Meteor 코어에 포함시켜 지원과 유지보수를 강화하려는 목표의 일환입니다.
    기여자: @harryadel.

  • Cordova 빌드가 이제 프로젝트의 package.json"modern": true 로 설정하면 레거시가 아닌 모던으로 간주됩니다.
    기여자: @tmeyer24.

  • --raw-logs 가 이제 Meteor CLI에서 개발 시 기본값이 되었습니다.
    제안자: @paulishca (논의 내용은 여기 참고), 구현은 @Grubba27.

Meteor 3.4에서는 이 외에도 다양한 개선 사항과 버그 수정이 도입되었습니다; 전체 변경 로그는 확인해 주세요.

릴리스 영상

  • 📹 Meteor 3.4와 앞으로의 로드맵 – Galaxy Expansion Day 5
  • 📹 Meteor 3의 모던 빌드 스택: 더 빠르고 풍부한 기능을 갖춘 번들링으로 Meteor 앱을 강화하세요

우리 기여자들에게 큰 감사

3.4 마일스톤을 달성하는 데는 활발하고 열정적인 커뮤니티가 없었다면 불가능했을 것입니다. 이번 릴리스를 위해 이 기여가 얼마나 중요한지 강조하고 싶습니다.

핵심 기여자:
@nachocodoner, @italojs, @Grubba27, @welkinwong, @harryadel, @vparpoil, @StorytellerCZ, @turoar23, @DipakHalkude, @sanki92, @evolross, @malua, @tmeyer24, @jeetburman, 그리고 @copleykj.

Meteor 3.4에 대한 테스트와 피드백을 제공해 주신 모든 커뮤니티 회원들께 감사드립니다.

Source:

Meteor와 그 이후는 어떻게 될까요?

다음 릴리스를 위해 우리의 우선순위는 다음과 같습니다:

  • 안정성 및 패치 – 피드백을 수집하고 문제를 수정합니다. 예정된 Meteor 3.4.x 패치.
  • Change streams – 통합된 MongoDB 변경 알림. Meteor 3.5에 예정.
  • Node 24 – 최신 Node LTS 릴리스와 정렬.
  • Native – Cordova를 넘어선 현대적인 네이티브 솔루션으로 전환.

예정된 작업 및 우선순위에 대한 자세한 내용은 Meteor 로드맵을 참조하세요.

로드맵

로드맵

Meteor 르네상스에 참여하세요!

Meteor 3.4는 우리가 구상했던 중요한 번들러 변화를 마무리합니다. 이러한 변화를 바탕으로 필요에 따라 번들러를 계속 조정하여 경험을 확장하고 개선할 것입니다. 또한, 우리가 사랑하는 프레임워크를 다른 영역에서도 활력을 되찾을 수 있도록 Meteor를 지속적으로 업데이트할 예정입니다.

우리는 다가올 변화에 기대가 크며, 여러분이 Meteor 르네상스에 함께해 주시길 기다리고 있습니다!

피드백, 질문 또는 지원이 필요하시면 포럼을 방문하거나 Discord 채널에 참여하세요.

문제가 발견되면 Meteor 이슈 트래커에 보고해 주세요.

TwitterGitHub에서도 팔로우해 주세요.

계속 지켜봐 주시고, 언제나 그렇듯 즐거운 코딩 되세요! ☄️

Back to Blog

관련 글

더 보기 »

JavaScript의 비밀스러운 삶: Proxy

Timothy는 책상에 앉아 약간 압도된 표정을 짓고 있었다. 그는 간단한 user 객체를 가지고 있었지만, 코드가 if 문으로 가득 차 있었다. js let user = { name: 'Timothy',...

JavaScript 개념

JavaScript에서 처음 만나게 되는 가장 중요한 개념 중 하나는 변수입니다. JavaScript는 변수를 선언하는 세 가지 주요 방법을 제공합니다: var, let, 그리고 const…