Webpackの70倍!Go言語で書かれたJavascriptバンドラー「esbuild」をベンチマークテストしてみた

esbuild
https://github.com/evanw/esbuild/

esbuildの特徴

複数モジュールの依存関係を解決し、1つにまとめるバンドラーは、現代のフロントエンド開発においてなくてはならないツールの1つ。


The State of JavaScript

上位5つに人気が集中し、なかでもWebpackのシェアは実に約60%に達しています。

今回ご紹介する「esbuild」は、Go言語で書かれた高速なバンドラーで、これらメジャーなツールとの性能比較(ベンチマークテスト)をやってみました。

公式のベンチマーク結果

計測方法は、three.jsライブラリを10回複製し、キャッシュなしで単一のバンドルをゼロから構築しています。なんと、Webpackに比べて85倍(ITnews計測では約70倍)もビルド時間が圧縮されるなど、クレイジーな速度を誇っています。

なぜ、早いのか?

・Go言語で書かれている
・パース、プリンティング、ソースマップの処理が完全に並列化されている
・すべての処理が、非常に少ないパスで実行され、コストのかかるデータ変換が不要
・コードは速度を重視し、不必要なアロケーションを回避している

実際に動かしてみる

$ git clone https://github.com/evanw/esbuild.git
$ cd esbuild
$ make bench-three

esbuildのブランチにある計測スクリプトを実行します。

Rollup.js

Built in 49s

real 49.95
user 54.59
sys 3.99

FuseBox

Built in 2m 56s 602ms

real 184.63
user 229.76
sys 15.46

Parcel

Built in 142.49s

real 154.52
user 305.49
sys 29.69

Webpack

Built in 56.95s

real 58.75
user 67.11
sys 4.45

esbuild

Built in 770ms

real 1.28
user 2.49
sys 0.70

ビルド時間を見れば、結果は一目瞭然です。

すでにバンドラーのまわりにはエコシステムが確立され、単純な速度比較だけでは技術が選ばれる理由にはならないでしょう。それでも、かなりショッキングな性能差であるのは事実であり、それとともに、Go言語の可能性を感じさせてくれる結果ではないでしょうか。

(追記 2020/2/19 14:00)
Webpackのビルド時間の単位に謝りがありました。正しくは「56.95s」であり、本文を修正いたしました。


コメントを読む

新着ピック  






















新着ニュース

Go言語(golang)でGoogle Cloud Storageからファイルを取得する | Developers.IO

Go言語(golang)でGoogle Cloud S...

DevelopersIO / 2時間前


ロボットを遠隔操作して接客、大阪のショッピングモールで実験

アニメ「鬼滅の刃」のコラボウォークマン予約開始、販売サイトで購入特典に違い

ジャガー・ランドローバーが都市型のライドシェア用電気自動車を発表、2021年の試験運用を目指す | TechCrunch Japan

アニメをAIで高解像度化、4K・8Kに変換 AIベンチャーが技術開発

マイナンバーカードでポイント還元、「PayPay」「Suica」などと連携

政府、デジタルプラットフォーマー規制法案を閣議決定 取引条件の開示など義務付け

VISAがNFC-A/B非接触決済による国内キャッシュレス化を強力推進へ | TechCrunch Japan

failure-lambdaを使ってAWS Lambdaへ障害注入する | Developers.IO

[アップデート]CloudFormationでEC2インスタンスの休止機能を有効化できるようになりました! | Developers.IO

WalmartのQ4決算はeコマースが35%成長も売上高は予想を下回る | TechCrunch Japan

そもそも入港拒否はできたのか ダイヤモンド・プリンセスを巡る「法的根拠」の話

製造業に特化、AI人材育成サービス登場 「顧客のAIプロジェクトと並走」

インド警察がカシミール地方でVPNを使った数百人の捜査を開始 | TechCrunch Japan

「10万円前後のノートパソコン」おすすめ3選 コスパ良好モデルはコレ!【2020年最新版】

ザッカーバーグCEOの自宅前でデモ--Facebookの政治広告ポリシーなどに抗議

Dellがセキュリティー部門のRSAを約2283億円で投資家グループに売却 | TechCrunch Japan

Kickstarterの正社員たちが労働組合を結成 | TechCrunch Japan

東京都水道局、コールセンターに「IBM Watson」導入 問い合わせ内容をテキスト化、回答の候補を提案

SpaceXの「Crew Dragon」での民間人宇宙旅行、早ければ2021年にも実現

もっと見る
記事をPICKする
会員登録
Register
記事をPICKする

会員登録すると、もっと便利に利用できます。