Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか

今回は「Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか」についてご紹介します。

関連ワード (反応、発表当初、第一弾等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


Cloudflareは、エッジでJavaScriptを実行できるサービス「Cloudflare Workers」において、Node.jsのAPI互換機能を提供すると発表しました。

node.js APIs have officially landed in Cloudflare Workers — no polyfills required.

We've added AsyncLocalstorage, EventEmitter, Buffer, assert and util, with more on the way soon.https://t.co/8CkPZkS3Yb

— Cloudflare Developers (@CloudflareDev) March 23, 2023

Cloudflare Workersは、同社が提供するグローバルなコンテンツデリバリーネットワーク(CDN)のエッジにJavaScriptのコードを配置し実行できる機能を提供するサービスです。Python、Scala、Kotlin、Dartなどのプログラミング言語やWebAssemblyの実行にも対応します。

JavaScriptの実行環境としてはChromeブラウザやNode.jsのJavaScriptエンジンとして用いられている「V8」を採用し、Web標準であるService WorkerのAPIに発表当初から対応しています。

そして今回、Node.jsのコアAPIに対応することが発表され、その第一弾としてNode.jsのAsyncLocalStorage、EventEmitter、Buffer、assert、そしてutilの一部の機能が互換性フラグをセットすることで利用可能になりました。

それ以外のAPIについても間もなく提供が発表されると説明しています。

Node.js APIが事実上の業界標準になるのか

前述のようにCloudflare WorkersはWeb標準であるService WorkerのAPIを提供していました。今回なぜNode.jsのコアAPIも提供することにしたのでしょうか。

それはおそらく、Cloudflare Workersの競合であるDenoやBunがNode.js互換APIの提供を行っているためだと考えられます。

サーバサイドJavaScriptはNode.jsが切り開いてきた分野ですが、Node.jsの開発者であったライアン・ダール氏が、Node.jsよりも優れたJavaScript実行環境としてNode.jsの次に取り組んだDenoでは、あえてNode.jsとの互換性を持たずに開発されました。

しかし2022年8月、Denoは突然にNode.js互換へと方針変更を発表します。

参考:Denoが大幅な方針変更を発表。3カ月以内にnpmパッケージへの対応を実現、最速のJavaScriptランタイムを目指しHTTPサーバを刷新

これは2022年7月に登場するやいなや、Node.js、Denoに続くサーバサイドのJavaScript実行環境として注目されるようになったBunが、Node.js互換を備えていたことに大きく影響されたためだと推察されます。

参考:JavaScriptランタイム「Bun」が約9億円を調達、「Oven」社を設立。ホスティングやCIサービスなど計画

BunはNode.js互換であるため、登場当初からNode.jsの大きな資産である大量のnpmモジュールが使えたのです。DenoはこのBunの登場により、Node.jsの資産を活用できる利点にあらためて気づかされ、Node.js互換へと方針を変更したのでしょう。

そしてNode.js本家に加えてDeno、BunがNode.js API互換で足並みを揃えたことが、Cloudflare Workersの今回のNode.js API互換提供という方向性にも影響を与えたのではないかと想像されます。

これでNode.js APIはサーバサイドJavaScriptにおける事実上の標準へと近づいたように見えます。

他のサーバサイドJavaScript環境を提供するFastlyやAWSなどのベンダや、非WebブラウザにおけるJavaScript実行環境の相互運用性を実現するW3Cの「Web-interoperable Runtimes Community Group」(WinterCG)などはこうした動きにどう反応していくのか、注目したいと思います。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
「Chrome」、7件の脆弱性を修正–うち4件は「重要」
IT関連
2022-06-16 12:52
UberのAutocab買収を英国の競争監視当局が調査
シェアリングエコノミー
2021-02-01 17:41
バッファローが新「nasne」発表 HDDは2TB、8TBまで拡張できる
くらテク
2021-03-18 12:28
企業向けにカーボンオフセットAPIを開発するスタートアップが急増中
EnviroTech
2021-02-06 15:36
ゲーム業界のマーケティング課題をAIで解決するには
IT関連
2023-10-21 22:26
なぜ俳優テリー・クルーズはソーシャルマネーを立ち上げるのか
ブロックチェーン
2021-03-12 04:51
ZOZO、本社移転は2月15日に 幕張から西千葉へ コロナ禍で執務スペースを縮小
企業・業界動向
2021-01-26 13:17
「Windows 11」新プレビュー、Defender for Endpointのランサムウェア対策を強化
IT関連
2022-08-06 17:26
ソフトウェア開発者の役割が変化した10年–Atlassian幹部に聞く
IT関連
2022-04-12 15:33
ビズリーチ、クラウド勤怠管理システム「HRMOS勤怠」を提供
IT関連
2022-02-17 03:16
米アトランタ地区にT-Mobileとジョージア工科大学のタッグによる5Gインキュベーターが新設
その他
2021-02-20 17:18
取締役会とCISOの間には憂慮すべきセキュリティ認識のずれ–プルーフポイント調査
IT関連
2022-12-08 21:19
Windowsをクラウドで提供する「クラウドPC」につながる「Windows 365 Boot」正式リリース
Microsoft
2023-09-27 23:37
三井住友銀行、日本IBMらと温室効果ガス排出量の可視化サービスを提供
IT関連
2022-08-12 18:12