Cloudflare Workersの心臓部をセルフホスト!JavaScript/Wasmサーバーランタイム — workerd
workerdは、Cloudflare Workersを動かしている実際のコードをベースにしたJavaScript/Wasm(ブラウザ外でも動くプログラム実行環境)のサーバーランタイムです。Cloudflare Workers向けに作ったアプリケーションを自分のサーバーで動かしたり、開発中にローカル環境でテストしたり、HTTPリクエストを途中で加工・転送するプログラム可能なプロキシ(中継サーバー)として使うことができます。workerdはWeb標準のAPI(fetch()など)をベースにしており、「ナノサービス」という独自の設計思想で、マイクロサービスのように分離しつつもローカル関数呼び出し並みの速さで通信できます。バージョン番号が日付になっていて、過去の互換性日付を指定すれば古いAPIの挙動をそのまま再現できるため、アップデートで既存コードが壊れることがありません。Cloudflareのインフラ技術を自分の手元で使いたい開発者や、エッジコンピューティングに興味がある人に最適なツールです。
🔥 なぜ話題?
Cloudflareが自社の本番環境で使っているランタイムそのものをオープンソースで公開しているという点が大きな注目を集めています。エッジコンピューティングやサーバーレスへの関心が高まる中、ベンダーロックインを避けてセルフホストできる選択肢として、またNode.jsやDenoに続く新しいJavaScriptランタイムとしても技術者の間で話題です。
💡 こう使える!
例えば、Cloudflare Workers向けに開発したWebアプリケーションを、クラウドに依存せず自社のサーバーで運用したい場合に、workerdをインストールして設定ファイルを書くだけで、同じコードをそのままセルフホストできます。開発段階では`wrangler dev`コマンドと組み合わせて、ローカルPCで本番さながらの動作確認も行えます。
ユースケース: Cloudflare Workers向けに書いたJavaScriptアプリを自分のサーバーで動かしたり、ローカル開発・テスト環境として使う
- Cloudflare Workersの本番コードと同じ基盤をオープンソースで利用可能
- バージョン番号が日付で過去の互換性を完全に維持する仕組み
- ナノサービス設計でマイクロサービスの柔軟さとローカル呼び出しの速さを両立
The JavaScript / Wasm runtime that powers Cloudflare Workers