問い合わFastly 無料トライアル

Compute@Edge による JavaScript サポート強化のお知らせ

Fastly では当初より、JavaScript 仮想マシーンを WebAssembly サンドボックス内で実行することで優れた安全性とパフォーマンスを発揮する JavaScript SDK構築してきました。Compute@Edge分離技術を用いてプラットフォームを通過するリクエストごとにマイクロ秒単位でサンドボックスを作成して破棄します。このテクノロジーにより、スケーラビリティとパフォーマンスを損なうことなく、全体的に攻撃対象領域を最小化し、プラットフォームを通過する他のリクエストからコードを完全に切り離すことができます。

この JavaScript SDKベータ (Beta) では、特定のアプリケーションワークロードにおいて Compute@Edge 上の JavaScriptパフォーマンスは他社のプラットフォームとレベルでしたが、Fastly Rust SDK比べると劣っていること分かりました。そこで Compute@Edge改良を加え、JavaScriptランタイムのパフォーマンスを大幅に改善したほか、プラットフォームの全体的な開発エクスペリエンスの向上を実現しました。

今回は、これらの改良を経て本番環境での使用に完全に対応可能になった JavaScript SDK最新バージョンを紹介します。それでは改善点について詳し見てみましょう。

コンピューティングパフォーマンスの改善

客様のコードを実行する際のパフォーマンスを改善するため、いくつかの重要な変更を実施しました。例えば Lucet WebAssembly ランタイム から、この2年間に多くのパフォーマンス最適化が施されてきた Wasmtime切り替えました。 

またワークロードをスケジュールするより効率的なメカニズム開発し、スケジューリングに必要なオーバーヘッドを大幅に削減しました。この変更は JavaScriptパフォーマンスにおいて特に重要で、ほとんどの JavaScript ワークロードにおいてパフォーマンスが倍に改善されます。

サービスインスタンスの作成に必要なオーバーヘッドを削減

パフォーマンスを最大限に高めるには、コードをできる限り速く実行することに加えて、リクエストの受信後、いかに速くコードの実行を開始できるかが決め手となります。そこで今回、Compute@Edge プラットフォームを大幅に改善新しサービスインスタンスの作成に必要なオーバーヘッドを削減しました。これにより、最初の1バイトが到着するまでの時間 (TTFB)短縮されました。

インスタンス化時間のばらつきを軽減

サービスがしばらく使用されていな場合に、オペレーションシステムがメモリの解放を処理する方法も強化しました。今回加えた変更により、1回目以降のサービスインスタンス化の遅延が大幅に解消されました。 

その他の追加機能

上記の変更により、Compute@Edge プラットフォーム全体と JavaScript SDK改善されただけでなく、その他のサポート言語にもメリットがもたらされました。さらに、JavaScript 開発者のエクスペリエンス向上に向けて以下の新し機能を最新リリースに追加し、本番環境での使用に完全に対応できるようにしました。

ぜひお試しくださ

開発者の皆さんは JavaScript SDK使用して Compute@Edgeパフォーマンスが高く、興味深いユースケースを実現しています。ある eコマース企業の客様は、エッジからリダイレクトを配信することでオリジンサーバーの処理負荷を排除し、非常に優れたパフォーマンスを維持した結果、SEO ランキングが向上しました。また、あるメディア配信企業の客様はダイナミック広告挿入をオンザフライで行い、レイテンシが少なく、高度にパーソナライズされたエクスペリエンスをエンドユーザーに提供しています。

JavaScript SDK使用について詳しくは、Fastlyドキュメント Developer Hubサンプルコードをご覧ください。Fastlyサーバーレスプラットフォームをまだご利用でないお客様は、ぜひ無料トライアルで Compute@Edge実際に試しくださ

Christine Cole
Senior Product Manager
興味がおありですか?
エキスパートへのお問い合わせ
この投稿を共有する
Christine Cole
Senior Product Manager

Christine Cole Fastly Senior Product Manager として Compute@Edge 担当しています。Fastly 入社以前は、さまざまなデータプラットフォームプロダクトの開発を指揮し、CDN Signal Sciences 向けに興味深いビッグデータ処理の課題に取り組みました。余暇にはオーディオブックを聴きながら海岸をジョギングしたり、興味をそそるレシピを考案したり、いろいろ工夫を凝らして子供たちを楽しませています。