オープンソースのWebAssemblyサーバレス基盤「Wasm Workers Server 1.0」正式リリース。RubyとPythonのWASMランタイムに対応し、Ruby/Pythonでの記述が可能に

今回は「オープンソースのWebAssemblyサーバレス基盤「Wasm Workers Server 1.0」正式リリース。RubyとPythonのWASMランタイムに対応し、Ruby/Pythonでの記述が可能に」についてご紹介します。

関連ワード (抜粋、記述、起動等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

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


VMware Wasm Labsは、Node.jsやDenoのようにWebAssemblyやJavaScriptで記述したWorkerをサーバサイドでイベントドリブンに実行できる「Wasm Workers Server」のバージョン1.0をリリースしました。

Wasm Workers Server v1.0.0 is out. We are happy to announce the support for Python, Ruby and more languages in the future!

From now on, you can create worker-based serverless apps using any of these languages and run them in #WebAssemblyhttps://t.co/oeceLzHQTO

— Wasm Labs (@vmwwasm) February 23, 2023

Wasm Workers Serverは、WebAssemblyランタイムであるWasmtimeの上に構築されているのが特徴。

Wasm Workers Serverのディレクトリに保存されたWorkerとなるファイルが、WebブラウザなどからのHTTPリクエストによって起動、実行され、結果を返す、といった処理が可能です。

Wasm Workers Servece 1.0でRubyとPythonに対応

これまでWorkerとなるファイルは、Rustで記述されWebAssemblyにコンパイルされたWebAssemblyモジュールのファイルか、JavaScriptで記述されたファイルに限られていました。

WorkerとしてWebAssemblyに対応しているのは、Wasm Workers ServerがWebAssemblyランタイムのWasmtimeを基盤としていることから当然と言えます。

JavaScriptが実行可能なのは、Wasm Workers ServerにWebAssemblyによるJavaScriptランタイムであるQuickJSが組み込まれているからです。QuickJSがJavaScriptファイルを読み込んで実行します。

そして今回のWasm Services Worker 1.0では、この2つに加えてRubyとPythonで記述されたスクリプトもWorkerとして実行可能になりました。

これはRubyとPythonをそれぞれWebAssembly上で実行可能にするWebAssemblyランタイムを利用することで実現されました。現時点ではVMware Labsが独自にビルドしたランゲージランタイムが利用されます。

ファイルベースのルーティング機能を搭載

Wasm Workers Serviceの具体的な動きを見てみましょう。以下はデモ動画「Python and Ruby support in Wasm Workers Server v1.0.0」からの抜粋です。

Rubyで「Hello from Ruby」と返すシンプルなWorkerファイルを記述し、Wasm Workers Serverのディレクトリに「worker.rb」というファイル名で保存します。

fig

Wasm Workers Serviceはファイルベースのルーティング機能を備えているため、ファイル名によって自動的にこのWorkerのエンドポイントが決まります。

ローカルでアクセスする場合、Webブラウザから「127.0.0.1:8080/worker」へアクセスすることで、このworker.rbにアクセスでき、実行されて「Hello from Ruby」が表示されるわけです。

fig

Wasm Workers Service 1.0ではダイナミックルーティング機能も備わりました。今後はさらに新たなプログラミング言語への対応なども追加すると説明されています。

このようにWasm Workers Serviceは、WebAssemblyのおかげでWindows、Linux、macOSをはじめとする多くのOSに対応し、ローカルマシンやクラウド、コンテナ環境などを含むほどんな環境でも簡単にインストールして実行でき、マルチランゲージ対応に対応するシンプルなサーバレス基盤となっています。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
Zoom、字幕の自動生成を無料アカウントでも可能に
IT関連
2021-02-26 08:19
NTT東日本、製造機器の稼働状態を可視化する「置くだけIoT」を提供
IT関連
2022-12-15 05:38
「SQLite3 WASM/JS」パブリックベータ公開。SQLite 3.40でサポート開始、WebブラウザなどでSQLiteが実行可能に
RDB
2022-11-21 16:45
携帯電話の格安プラン、一番お得なのはどこ? 「ahamo」がリード 楽天は2台目以降の選択肢
IT関連
2021-03-10 04:40
グーグルのInboxを復活させてSlackも混ぜたメールクライアント「Shortwave」
IT関連
2022-02-17 00:33
世界最大級の暗号資産取引所Binanceのチャンポン・ジャオCEO、規制とアフリカでの活動について語る
IT関連
2022-02-01 04:19
契約マネジメント「クラウドサイン」、「マイナンバーカード署名」機能を提供
IT関連
2023-07-28 18:16
陳列事例を素早く共有–スーパーマーケット展開のヤマザワ、「LINE WORKS」導入
IT関連
2023-11-09 11:06
ブロードコム、ヴイエムウェアとシマンテックのセキュリティ連携を開始
IT関連
2024-02-29 05:36
モバイル機器に搭載可能な新型コロナウイルス検出センサー開発でGE技術研究開発部門がNIHの助成金を獲得
ヘルステック
2021-04-13 01:22
キヤノンITS、従来型EDIの早期切り替えを支援する新接続サービスを開始
IT関連
2023-05-11 05:03
「KDE Plasma」に「Flatpak」でアプリを簡単にインストールするには
IT関連
2023-04-28 05:48
マイクロソフトのQ4決算、予想上回る–「Azure」など好調
IT関連
2021-07-28 00:21
「Microsoft 365」の管理者向けにWeb会議詰め込み防止機能
アプリ・Web
2021-04-23 11:48