カスタム検索
表示順:
Relevance
Relevance
Date
ウェブ
 
 
 

CDNのエッジでJavaScriptとServiceWorkerを実行できる「Cloudflare Workers」がWebAssemblyに対応

2018年10月3日


CDNプロバイダのCloudflareは、3月にリリースした「Cloudflare Workers」を強化し、WebAssemblyの実行に対応したことを発表しました

Cloudflare Workersは、同社が提供するグローバルなコンテンツデリバリーネットワーク(CDN)のエッジにおいて、開発者がJavaScriptのコードを配置し実行できる機能を提供します。また、HTML5の新機能として策定されたService Workerも利用可能です。

参考:JavaScriptのコードとService Workerをユーザーに近いCDNのエッジで実行可能。Cloudflareが「Cloudflare Workers」を提供開始

Cloudflare Workers

Service Workerとは、もともとWebブラウザに実装されバックグラウンドで起動される、いわばプログラミング可能なローカルプロキシです。ルーティングやレスポンスやキャッシングなどを操作でき、オフラインで動作するWebアプリケーションを実現する上で重要な機能を提供します。

これをCDNのエッジで提供することにより、JavaScriptで操作可能なインテリジェントなキャッシュやルーティングなどを実現できます。

これによってクライアントに対して非常に高速にレスポンスを返すことができ、またオリジンサーバの負荷を効果的に削減しつつ、広範囲に分散された高い冗長性を持つ分散システムが構築可能になります。

Cloudflare WorkersがWebAssembly対応に

今回発表されたのは、このCloudflare WorkersがWebAssemblyに対応したことです。WebAssemblyは、Webブラウザ上でネイティブコードに近い実行速度で高速に実行できるバイナリフォーマットで、C言語やGo言語、Rust言語などさまざまな言語から生成できます。

Cloudflare WorkersがWebAssemblyに対応したことで、JavaScript以外での開発が可能になることと、JavaScriptのコードよりも高速にアプリケーションが実行できるようになります。

では、どのような場合にCloudflare WorkersでWebAssemblyを用いるのか。Cloudflareのブログに投稿された記事「WebAssembly on Cloudflare Workers」では、次のように説明されています。

WASM really shines when you need to perform a resource-hungry, self-contained operation, like resizing an image, or processing an audio stream.

WASMがその能力を本当に発揮するのは、リソースを大量に消費する自己完結型の処理、例えば画像のサイズ変更や音声処理などの場面だ。

These operations require lots of math and careful memory management. While it's possible to perform such tasks in pure JavaScript — and engines like V8 have gone to impressive lengths to optimize such code — in the end nothing beats a compiled language with static types and explicit allocation.

これらの処理は多くの計算と綿密なメモリ管理が求められる。これらはJavaScriptでもできないことはないし、V8エンジンはそうした大きな処理を最適化する能力に達してもいるが、結局のところ静的型付けと明確なメモリ割り当て処理(が行えるWebAssembly)に勝るものはないのだ。

この例に挙げられているようなヘビーな処理をユーザーに近いエッジで分散して実現できるとすれば、クラウドを用いた集中処理とは異なる興味深いアプローチが実現できそうです。

follow us in feedly


≪前の記事
Yahoo! Japanが近日中にFIDO認証に対応すると表明、パスワードを使わず生体認証などでWebブラウザからのログインを可能に


カテゴリ



Blogger in Chief

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

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

人気記事ランキング

  1. UIテストの所要時間を10分の1にする試み、Raspberry Piのクラスタで並列実行。ソフトウェア品質シンポジウム2018
  2. Java 11正式版がリリース、本バージョンからOracle JDKのサポートは有償に。OpenJDKで無償の長期サポート提供は現時点で期待薄
  3. [速報]マイクロソフト純正のデスクトップ仮想化サービス「Windows Virtual Desktop」発表。Azureからクラウドサービスとして。Microsoft Ignite 2018
  4. Microsoft Azure上での実行目的ならJavaの長期サポート(LTS)を無料提供、MacやWindowsでの開発用途もOK。マイクロソフトとAzul Systemsが提携で
  5. AWS LambdaがSalesforceのイベントをトリガーに実行、閉域網で両クラウドを接続。AWSとセールスフォース・ドットコムが統合強化。Dreamforce '18
  6. Yahoo! Japanが近日中にFIDO認証に対応すると表明、パスワードを使わず生体認証などでWebブラウザからのログインを可能に
  7. MySQL互換の分散データベース「Clustrix」、MariaDBが買収
  8. [速報]Windows Server 2019は今週、正式リリースに。ハイブリッドクラウドの機能やハイパーコンバージドシステム構築機能など搭載。Microsoft Ignite 2018
  9. SlackがメールクライアントのAstroを買収。メールのやりとりもSlackのチャンネルに統合へ
  10. 来月にはJava 10が登場し、9月にはJava 11が登場予定。新しいリリースモデルを採用した今後のJava、入手方法やサポート期間はこう変わる(OpenJDKに関する追記あり)


新着記事 10本


PR - Books


fig

fig

fig