Wasmerは、WebAssemblyをサーバなどで実行するためのオープンソースランタイムの最新版「Wasmer 3.0」をリリースした。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Wasmerは2022年11月23日(米国時間)、オープンソースのWebAssemblyランタイムの最新版「Wasmer 3.0」をリリースしたと発表した。
WebAssembly(「Wasm」と略される場合もある)は、Webブラウザなどモダンな実行環境での効率的なコード実行とコンパクトなコード表現を実現する安全でポータブルな低レベルフォーマット。World Wide Web Consortium(W3C)がコア仕様をW3C勧告として公開している。Wasmerは、WebAssemblyをサーバなどで実行できるようにするランタイムだ。
Wasmer 3.0の新機能は次の通り。
「wasmer run」コマンドにより、WAPMパッケージを直接実行できるようになった。
WAPMは、WebAssemblyモジュールのオープンソースパッケージマネジャーで、Wasmerなど任意のWebAssemblyランタイムからスタンドアロンで使用できる。WAPMエコシステムは、パッケージを保存、提供する「WAPMパッケージレジストリ」(wapm.io)と、パッケージをインストール、管理する「WAPMパッケージクライアント」(wapm CLI)という2つのツールで実現されており、これらのツールはWasmerにバンドルされている。
Wasmer 3.0ではwasmer runにより、wapm.ioに公開されているパッケージをwasmer CLIで実行できるようになった。例えば、「wasmer run python/python」により、wapm.ioから直接pythonパッケージをダウンロードし、実行できる。
これにより、wasmerでWAPMからWASI(WebAssembly System Interface)ファイルを実行するためのフローが大幅に簡素化される。WASIは、WebAssemblyのモジュラーシステムインタフェースだ。
WasmerのRust APIが一から作り直され、新しいAPIとメモリ管理スタイルにより、Wasmオブジェクトを安全に「Store」に格納できる。
Wasmerではこれまで、dylibやユニバーサルなど、さまざまなコンセプトのエンジンが使われてきた。だが、コードの再利用を容易にするため、エンジンが1つに集約された。
ビルドの成果物のゼロコピーデシリアライゼーションに「rkyv」が使用されるようになった。これにより、起動のパフォーマンスが大幅に向上した。
Wasmerの「create-exe」サブコマンドが刷新され、Wasmerは、WebAssemblyファイルをWindows、Linux、mac OSのネイティブ実行ファイルに変換できる。そのため、Wasmerのインストールを要求することなく、ユーザーに実行ファイルを配布可能だ。
WasmerのWASI実装がより成熟した。例えば、ファイルシステムの複数のバグが修正され、その内部型がWebAssembly Interfaces(WAI)で作り直された。
Copyright © ITmedia, Inc. All Rights Reserved.