サーバサイドWebAssemblyに、かつてのCGIの仕組みを取り込んだ「WCGI」をWasmerが発表。すぐ起動し安全に分離されるWebAssemblyの特長が活きる

今回は「サーバサイドWebAssemblyに、かつてのCGIの仕組みを取り込んだ「WCGI」をWasmerが発表。すぐ起動し安全に分離されるWebAssemblyの特長が活きる」についてご紹介します。

関連ワード (上記、化済、開発等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


スタンドアロンのWebAssemblyランタイム「Wasmer」の開発元であるWasmer.ioは、サーバサイドのWebAssemblyフレームワークとして、かつて動的なWebサイトを構築する技術として主流だったCGI(Common Gateway Interface」の仕組みを取り込んだ「WCGI」を発表しました。

Today we are incredibly excited to announce WCGI.
WCGI allows running any CGI app with WebAssembly and Wasmer!

(…we got WordPress running! )

Check it out!https://t.co/TNTctlBqJa pic.twitter.com/tOZpdhd1Eq

— Wasmer (@wasmerio) April 6, 2023

WCGIは、既存のPHPやPythonのCGIアプリケーションをWebAssemblyにコンパイルするだけで簡単にサーバサイドのWebAssemblyアプリケーションになるのが大きな特長の1つです。

実際にWasmer.ioはWordPressをWebAssembly化し、ローカル環境でWCGIとして簡単に起動するデモ動画を公開。上記のツイート内の動画がその様子です。

以下の手順で実際に試すことも出来ます。具体的には、Wasmerをインストールして、データベース用のディレクトリを作成、WebAssembly化済みのWordPressデモアプリを起動するだけです。

WindowsのWSL環境で試しましたが、下記の手順で簡単にローカルPC上でデモが起動しました。

この「wcgi-wordpress-demo」では、PHPをCGIで実行可能にするPHP-CGIがWebAssembly化され、そのアプリケーションとなるPHPで作られたWordPressのコードがパッケージングされているようです。

コンパクトかつサンドボックスによる安全性も

WCGIの2つ目の特長は、Dockerコンテナなどに比べると、アプリケーションを非常にコンパクトにパッケージングできるということです。

パッケージングに必要なのは、コンパイル済みのバイナリとなったWebAssembly化されたアプリケーションと関連ファイルであること、そして迅速に起動することも、(かつてのCGIの遅いイメージと比べても)利点といえるでしょう。

3つ目はWebAssemblyの特徴でもあるサンドボックス化された実行による安全性です。HTTPリクエスト毎に実行されるインスタンスはWebAssemblyのサンドボックス内で実行されるため、そこから外部に対して不正にアクセスされるといった可能性は非常に低くなります。

Wasmer.ioではPHP用のWCGIテンプレートやRustでWCGIを開発する手法について解説しています。

CGIはかつて動的なWebサイトを構築する手法としてよく使われていましたが、HTTPリクエスト毎にプロセスが起動され、結果をWebサーバに返すという仕組みのために処理速度やスケーラビリティに課題を抱えており、現在ではあまり使われなくなりました。

このCGIの課題を軽量で迅速に起動し実行されるWebAssemblyによって再構築しようというWCGIの取り組みは、WebAssemblyの特長を活かしたサーバサイドWebAssemblyの実装手段として興味深いのではないでしょうか。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
HPEが「Silicon on demand」発表、CPUコアを使いたいときだけシリコンレベルで有効に。インテルと協業で開発。HPE Discover 2021
HPE
2021-06-24 01:14
Cloudflare、世界中からのデータベースアクセスを高速化する「Hyperdrive」正式サービスに。CDNを用いてDBのコネクションプーリングやキャッシュを提供
Cloudflare
2024-04-02 13:22
宮城県、インフラ異常を通報するミニアプリを実証実験
IT関連
2023-11-29 13:07
デル、オープンなテレコムエコシステム強化に向けた新通信ソリューション
IT関連
2022-02-26 21:24
製造業のDX、課題は予算不足–人材不足が課題も90%に
IT関連
2023-12-12 17:52
今週の記事ランキング(2021.2.14〜2.18)
IT関連
2021-02-20 15:29
イオンとナガセが語る、生成AIで開発した新サービス–マイクロソフト顧客事例
IT関連
2024-06-27 16:48
ヤマト運輸、ServiceNowのITSMツールを導入–データ問い合わせ業務を効率化
IT関連
2022-08-06 14:34
Hondaと楽天の自動配送ロボ、筑波大構内を走る サービス実現に向け技術検証
ロボット・AI
2021-07-20 11:01
NTTの災害対策ソリューションはグループの総力を結集せよ
IT関連
2023-06-30 12:40
「Google Meet」、外見補正機能を導入–モバイル版から
IT関連
2023-10-25 02:42
フロー型からストック型へのビジネスモデル転換に向けたDellとHPEの深謀遠慮
IT関連
2022-10-21 20:33
あつ森に「観光案内メーカー」登場 自慢の島をポスターや動画に
くらテク
2021-03-25 18:01
GitHub、Armベースのホステッドランナー提供を発表、マイクロソフトはArm対応アプリ開発の支援サービス発表。Arm対応支援が相次ぐ
ARM
2023-11-01 18:43