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

今回は「Webpackの後継となる新バンドルツール「Turbopack」が登場。Rust製のネイティブアプリケーションでWebpackの700倍高速に。Next.js Conf 2022」についてご紹介します。

関連ワード (年間、維持、複数等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Reactベースのサーバサイドフレームワークとして知られるNext.jsの開発元のVercelは、日本時間10月25日深夜にイベント「Next.js Conf 2022」を開催。Next.jsの最新バージョンとなる「Next.js 13」と、Rust製の高速なバンドルツール「Turbopack」を発表しました。

Introducing Turbopack, the successor to Webpack.

~700x faster than Webpack
10x faster than Vite
Native incremental architecture built with Rust
Support for React Server Components
Support for TS, JSX, CSS & more

Now open-source in Alpha.https://t.co/dHXXFfgGOJ

— Vercel (@vercel) October 25, 2022

バンドルツールとは多数のJavaScriptやTypeScriptなどのコードを1つにまとめる機能を備えたツールです。多数のライブラリやコンポーネントなどを用いてチームで開発する大規模なWebアプリケーションの開発には欠かせません。

今回発表されたTurbopackは、代表的なバンドルツールの1つであるWebpackの開発者Tobias Koppers氏らがVercelに参加して開発したものです。同社はWebpackの後継がTurbopackであると説明しています。

Turbopackの特徴はRustで記述されたネイティブアプリケーションであることと、一度実行された内容は再利用される仕組みを備えていることなどで、これにより大規模なアプリケーションでも高速な起動と実行を実現します。

Next.js 13ではこのTurbopackが標準のバンドルツールとなります。

Next.js Conf 2022の基調講演から、Turbopackに関する説明が行われた部分をまとめました。

関連:Next.js 13登場、動的なWebサイトの実現を強化。複数ページでの動的データの共有や、ステートを維持した共通ナビゲーションの構築など容易に。Next.js Conf 2022

JavaScriptベースのツールは性能面での限界に直面した

VP of Developer Experience Lee Robinson氏。

Next.jsにおけるコンパイラインフラストラクチャの新しい始まりです。

fig

かつて2016年には、JavaScriptのためのツールをJavaScriptで書くことは自然なことでした。Babel、tercer、Webpackなどのツールはそうして作られました。

fig

しかしフロントエンドアプリケーションのサイズと複雑さの増加に対して、これらJavaScriptベースのツールによるコンパイルは性能面での限界に直面するようになります。

そこで私たちはRustベースのネイティブなツールへの移行を開始したことを前回のイベントでご紹介しました。まずBabelから移行し、トランスパイルの速度を17倍にしました。次に、tercerも置き換えることで、minificationが6倍速くなりました(新野注:Babelとtercerの移行先となったツールはSWC)。

fig

Webpackの後継となるTurbopackの登場

ではバンドルについてはどうでしょうか。バンドルツールのWebpackは30億回以上ダウンロードされており、ビルドに欠かせない存在です。しかしWebpackもBabelやtercerと同じように、ネイティブに全力を注ぐ時が来ました。

Webpackの開発者であるTobias Koppersは私たちVercelに加わり、次世代のバンドルツールを作るためにワールドクラスのエンジニアのチームを結成しました。このチームがWebpackの10年間の教訓と、TurborepoやGoogleのBazelから得た革新とを組み合わせることで、次の10年に耐えるアーキテクチャを開発したのです。

ここにTurbopackを発表します。Webpackの後継となるRustベースのツールです。

fig

大規模なアプリケーションでは、TurbopackはViteよりも10倍速く、Webpackの700倍も高速です。さらに大きなアプリケーションであれば、その差はさらに開くでしょう。

fig

このスピードアップは、コードの更新時だけでなく、ローカルで開発サーバーを立ち上げる際にも有効です。

例を見てみましょう。3000個のモジュールを持つ大規模なアプリケーションを扱う場合でも、Turbopackは1.8秒で起動します。Next.jsの以前のバージョンや他の一般的なツールよりも高速です。

fig

ローカルとクラウドの両方でビルドを強化していく

Turbopackの性能は、Rustで開発され、高度に最適化されたマシンコードと低レベルのインクリメンタルエンジンによるものです。Turbopackは一度実行したタスクは二度と実行しないのです。

Turbopackはまず、React Fast Refresh(新野注:実行中のアプリケーションでもコンポーネントを編集できる機能)を含むローカルでの開発体験に焦点を当てますが、最終的にはローカルとクラウドの両方でNext.jsのビルドを強化する予定です。

fig

Tuborepoと同様に、ローカルマシンだけでなく組織全体においてチーム内で既に実行された作業内容を共有できます。

ぜひNext.js 13にアップグレードして「next dev –turbo」を実行し、Turbopackのアルファ版をぜひお試しください。

fig
fig

Next.js Conf 2022

  • Next.js 13登場、動的なWebサイトの実現を強化。複数ページでの動的データの共有や、ステートを維持した共通ナビゲーションの構築など容易に。Next.js Conf 2022
  • Webpackの後継となる新バンドルツール「Turbopack」が登場。Rust製のネイティブアプリケーションでWebpackの700倍高速に。Next.js Conf 2022

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「歩くとギガがたまる」携帯料金オプション、日本通信が提供 6万歩で1GB
企業・業界動向
2021-06-23 12:35
NEC、100%再エネ活用のデータセンターを2つ新設
IT関連
2024-05-15 07:21
エヌビディア、生成AI向けプラットフォームを発表
IT関連
2023-03-23 07:55
ClubhouseのAndroidアプリ(β)、日本は5月18日リリース
アプリ・Web
2021-05-18 02:33
“情シス”が企業の経営変革をリードする組織に生まれ変わるべき理由 情シスエバンジェリスト×日本HP対談
PR
2021-02-15 20:03
民事判決、メールで通知 法制審中間試案、迅速化へ半年審理も検討
IT関連
2021-02-23 05:21
日立ソリューションズ、業務アプリのスケジュール管理を支援–第1弾はAWS上のアプリを対象
IT関連
2024-09-29 04:36
IT運用のソフトウェア工学的アプローチ–SREとは?
IT関連
2022-03-17 03:55
C++の後継目指すプログラミング言語「Carbon Language」、Googleの技術者が実験的公開。C++は技術的負債で改良が困難と
IT関連
2022-07-21 13:50
CTCと三重県工業研究所、AI活用した陶磁器の材料開発で実証実験
IT関連
2023-01-14 05:10
日本中央競馬会、公共性の高い競馬事業を支えるデータ保護基盤を統一
IT関連
2021-02-17 01:36
KDDIら3社、物流DXで業務提携–ベンダーフリーな倉庫自動化ソリューションを提供へ
IT関連
2022-12-03 22:02
【インタビュー】人工流れ星の2023年に商用運用開始へ、10年の節目を迎える日本の宇宙スタートアップ「ALE」
宇宙
2021-07-17 03:08
同志社大学、学生相談の対応にAIチャットボット導入–導入から公開まで約2カ月
IT関連
2023-06-03 18:00