オープンソースの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
「OneNote」の文書を添付したフィッシング攻撃が増加
IT関連
2023-02-07 23:16
遊戯王の「千年パズル」、バンダイが再現 完成までの手順が分からない初のプラモデルに
くらテク
2021-03-20 01:46
[速報]「Docker Desktop for Linux」が登場、WindowsやMac版と同じ機能や操作を提供、Raspberry Pi OSにも対応
Docker
2022-05-11 20:11
CSIRTの歴史的変遷で探るインシデント対応の課題と解決の道のり
IT関連
2021-07-05 21:40
NTT Com、ビジネスを共創する「OPEN HUB Park」開設–事業創出の触媒や触発に
IT関連
2022-02-23 19:06
SAPジャパンとコンカーが本社移転、社員の42%が「フルリモート」希望
IT関連
2021-02-08 13:18
ビジネスメール詐欺の被害額など高額–FBIの2020年インターネット犯罪レポート
IT関連
2021-03-27 21:50
東京都港区、行政手続きのデジタル化を目指して窓口総合支援システムを導入
IT関連
2021-03-13 15:04
シャープ、企業向けショールームをライブ動画で案内「オンラインLIVEショールーム」
企業・業界動向
2021-02-10 03:17
英国の郵便、「サイバーインシデント」で混乱–国外に発送できず
IT関連
2023-01-14 06:41
ハリウッドではすべてがリブートされる、そう散々なサービスだった映画見放題サブスクMoviePassでさえも
IT関連
2022-02-13 21:33
第1回:なぜ今、改めてERPなのか
IT関連
2023-02-16 00:47
NEC、PC向けの顔認証機能をクラウドサービスで提供開始
IT関連
2021-07-20 02:48
業務効率化のための統合ID管理を活用する東映アニメの取り組み
IT関連
2022-01-22 11:57