Rust製の高速なwebpack互換バンドラ「Rspack」登場。現時点で5倍から10倍の性能向上

2023年3月15日

TikTokの開発元で知られるByteDanceのWebインフラチームは、Rust製の高速なwebpack互換バンドラ「Rspack」(発音はɑrespæk、アールエスパックもしくはアールエスペックのように聞こえます)をオープンソースで公開しました。

アイコンは雷光のように素早いカニで、コンパイルの高速性を表しているとのことです。

fig

バンドラとは、複数のJavaScriptやTypeScriptの依存関係などを解決し、コードやフォント、画像などのリソースなどをまとめるバンドルツール(あるいはモジュールバンドラやビルドツールなどとも呼ばれます)です。

多数のライブラリやコンポーネントなどを用いてチームで開発するWebアプリケーションの開発には欠かせないツールとなっています。

その代表的なツールがwebpackですが、webpackはJavaScriptで開発されNode.jsの上で実行するツールとして作られているため、複雑な処理の場合には実行時間がかかるという課題がありました。

ByteDanceにおいてもビルドにかかる時間が短くて10分、長いと30分以上になるとのことで、その解決策としてRustベースの高速なwebpack互換のRspackを開発したと説明されています。

社内プロジェクトでは5倍から10倍の改善

Rspackの開発は2022年4月から同社内でスタートし、今月(2023年3月)にオープンソースとして公開されました。

現時点でもRspackは開発の初期段階にあり、多くのwebpackの機能が未実装ではあるものの、現時点で実装されている主要な機能によって多くの事業におけるニーズに対応できていると説明しています。

実際にすでに同社内ではRspackへの移行が始まっており、いくつかのプロジェクトではwebpackと比較して5倍から10倍の性能向上が達成できているとのことです。

webpackのエコシステムと互換

Rspackはwebpackのエコシステムと互換があると表現されており、隅々までwebpackとの互換を目指しているわけではないようです。現時点でコンフィグレーションファイルにおいてwebpackとスキーマ互換とされ、less-loader、sass-loader、postcss-loader、json-loader、stylus-loaderなど多くのローダーとも互換性があります。デフォルトの状態でTypeScript、JSX、CSS、CSS Modules、Sassなどに対応しています。

Rustで書かれているおかげで高速に起動し、インクリメンタルコンパイルとHot Module Replacement(HMR)など、大規模なプロジェクトでも高速なビルドを可能にする機能なども搭載しています。

今後はコミュニティのフィードバックをもとに機能追加を行っていくとともに性能改善もしていくとしています。

Rust製の高速なバンドラとしては、webpackの主要な開発者がNext.jsに入社してwebpackの後継として開発している「Turbopack」もあります。

参考:Webpackの後継となる新バンドルツール「Turbopack」が登場。Rust製のネイティブアプリケーションでWebpackの700倍高速に。Next.js Conf 2022

現時点ではまだwebpackが抜きん出た人気を得ていますが、現時点で主要な開発者が抜けてしまったwebpack後継の座を狙った競争が始まったといえそうです。

追記(2023/3/15 14:00)

Rspackチームはwebpackの高速化にも取り組むことを表明していた点を、次の記事で補足しました。

Tags: HTML/CSS JavaScript プログラミング言語 開発ツール TypeScript

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本