オープンソースの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
ライオン、製品情報のデジタルアセット管理に「Adobe Experience Manager」を採用
IT関連
2023-11-03 11:04
2023年には新規アプリの60%がローコード/ノーコードで開発される、IDC Japanが予測。過去1年で国内の導入率は4倍超に
ローコード/ノーコード開発ツール
2022-04-25 04:17
ランサムウェア攻撃で日本関連の情報暴露は35件–パロアルトネットワークス調べ
IT関連
2024-03-09 04:03
パナソニックが世界で初めて純水素型燃料電池を活用したRE100化ソリューションの実証実験を開始
EnviroTech
2021-05-25 15:56
freee、「freee請求書」を提供開始–インボイス制度に対応した請求書の作成を無料で可能に
IT関連
2022-12-15 23:03
PelotonのCEOが是正措置は認めるもバイクとトレッドミルの「全生産停止」を否定
IT関連
2022-01-24 08:48
NEC、日本ガイシの統合生産管理システムをローコードで開発
IT関連
2024-03-26 19:39
見る側の知見が試される、「切り抜き動画」の未来 実際に切り抜いて改変してみた :小寺信良のIT大作戦(1/2 ページ)
イラスト・デザイン
2021-04-28 01:53
サムスン、3nmチップの量産を開始
IT関連
2022-07-02 22:35
ITシステムと組み込みソフトウェアにおけるSBOM対応の違い
IT関連
2025-02-26 12:52
Rust Foundation、Rustコミュニティーの成長支える助成プログラム開始
IT関連
2022-04-02 06:55
マイクロソフト、米国オフィスでワクチン接種証明を必須に–業者やゲストも
IT関連
2021-08-04 08:39
セレブがウォーキングをリードしてくれるApple Fitness+の新機能
ハードウェア
2021-01-27 11:55
新潟県柏崎市、「ChatGPT」を活用した業務効率化ツールで年240時間分の工数削減へ
IT関連
2023-11-21 13:11