WebAssemblyランタイム「Wasmer」がPHPに対応 Wasmerで「WordPressを3倍高速に動かす」手法とは:サーバレスプラットフォーム「Wasmer Edge」でも利用可能に
Wasmerは、同社のWebAssemblyランタイム「Wasmer」とサーバレスアプリケーションプラットフォーム「Wasmer Edge」で、PHPを完全に実行できるようになったと発表した。
WebAssembly(Wasm)ランタイムを開発するWasmerは2024年5月24日(米国時間)、同社のWasmランタイム「Wasmer」とサーバレスアプリケーションプラットフォーム「Wasmer Edge」で、PHPのサポートがオープンβ段階に入り、これらの環境でPHPを完全に実行できるようになったと発表した。
オープンソースの汎用(はんよう)スクリプト言語であるPHPは、Web開発に広く利用されている。Q-SuccessのWeb技術調査サービス「W3Techs - World Wide Web Technology Surveys」によると、PHPはサーバサイドプログラミング言語の中で、世界のWebサイトでの利用シェアが約75%と圧倒的に高い。
Wasmerは、WebAssemblyでPHPを実行することの重要性について「WebAssemblyの特性により、PHPプログラムがアクセスできるリソースを安全に制限できる。OSやハードウェアの仮想化によるオーバーヘッドなしに、PHPを安全に実行できる。サーバレスのようなスケーラビリティをPHPアプリケーションにもたらすことで、クラウドプロバイダーが課金する料金の数分の1のコストで、PHPアプリケーションを実行できるようになる」と説明している。
WasmerおよびWasmer Edgeは、最も人気のあるPHPコンテンツ管理システム「WordPress」とPHPフレームワークの「Symfony」「Laravel」を実行できるという。Wasmerはこれらに対応したアプリケーションテンプレートも提供している。
オペコードキャッシングを有効化 「WordPressは3倍高速に動作する」
Wasmerは、WebAssemblyとPHPを最大限に活用できるようにするため「オペコードキャッシング」をWebAssemblyで有効にしている。PHPの内部では、読み込まれたソースコードがオペコード(opcode)と呼ばれる内部状態に変換された後、実行される仕組みがある。オペコードキャッシングは、一度変換したオペコードをキャッシュしておいて再利用する高速化手法だ。これにより、WordPressをWasmerで実行すると、3倍高速に動作するという。
「今後、WasmerでのPHPの実行速度をネイティブ速度に近づけるため、さらに改善を進める計画だ。CloudflareやFly.ioのようなエッジ市場のプロバイダーに対して高い競争力を発揮することを目指す」と、Wasmer社は述べている。
なお、Wasmerは注意点として次の2点を挙げている。
- Wasmer Edgeにおけるカスタムファイルシステムボリュームのサポートについては準備を進めている
- SQLiteを使用しているアプリケーション(WordPressやSymfonyなど)は現時点でデータベースの変更をメモリに保存するだけであり、永続的に保存できない
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
Wasmerが「py2wasm」を発表、PythonからWebAssemblyに変換 インタープリタより3倍高速実行可能に
WebAssembly(Wasm)ランタイムを開発するWasmerは、PythonプログラムをWebAssemblyに変換し、ベースラインインタープリタよりも3倍高速に実行できるようにする「py2wasm」を発表した。JavaScriptランタイム「WinterJS 1.0」リリース、WasmerがRustで開発
Wasmerは、Rustで書かれた高速JavaScriptランタイムの正式版「WinterJS 1.0」を発表した。Wasmer、「Wasmer JavaScript SDK」を発表
WebAssembly(Wasm)ランタイムを開発するWasmerは、WASI(X)アプリケーションをブラウザで簡単に実行するための新しいライブラリ「Wasmer JavaScript SDK」を発表した。