Readme in English | 中文 | 正體中文
WasmEdge は軽量、高性能、拡張可能な WebAssembly ランタイムです。現在、最速の Wasm VM になります。WasmEdge は、CNCF が主催する公式サンドボックスプロジェクトでです。そのユースケースには、モダンなウェブアプリケーションアーキテクチャ(Isomorphic & Jamstack アプリケーション)、エッジクラウド上のマイクロサービス、サーバーレス SaaS API、組み込み機能、スマートコントラクト、スマートデバイスなどが含まれます。
🚀 WasmEdge のインストール
🤖 WasmEdge へのビルドとコントリビュート
⌨️ CLIまたはDockerからスタンドアロンのWasmプログラムまたはJavaScriptプログラムを実行
🔌 Go、Rust、CアプリにWasm関数を組み込みます
🛠 Kubernetes、データストリーミングフレームワーク、ブロックチェーンを使用してWasmランタイムを管理し、オーケストレーションする
📚 公式ドキュメントをチェック
WasmEdge ランタイムは、含まれる WebAssembly バイトコードプログラムに対して、明確に定義された実行サンドボックスを提供します。ランタイムは、オペレーティングシステムリソース(ファイルシステム、ソケット、環境変数、プロセスなど)とメモリ空間の分離と保護を提供します。WasmEdge の最も重要なユースケースは、ソフトウェア製品(SaaS、Software-Defined Vehicle、エッジノード、あるいはブロックチェーンノードなど)のプラグインとして、ユーザー定義コードやコミュニティ貢献コードを安全に実行することになります。これにより、サードパーティの開発者、ベンダー、サプライヤー、コミュニティメンバーがソフトウェア製品を拡張し、カスタマイズすることが可能になります。詳細はこちら
- A Lightweight Design for Highperformance Serverless Computing、IEEE Software に掲載、Jan 2021。https://arxiv.org/abs/2010.07115
- Performance Analysis for Arm vs. x86 CPUs in the Cloud、infoQ.com に掲載、2021年1月。https://www.infoq.com/articles/arm-vs-x86-cloud-performance/
- WasmEdge is the fastest WebAssembly Runtime in Suborbital Reactr test suite、2021年12月
WasmEdge は、C/C++、Rust、Swift、AssemblyScript、または Kotlin のソースコードからコンパイルされた標準的な WebAssembly バイトコードプログラムを実行できます。サードパーティの ES6、CJS、NPM モジュールを含む JavaScript を、安全、高速、軽量、ポータブル、コンテナ化されたサンドボックスで実行します。また、これらの言語の混合(例えば、JavaScript API を実装するために Rust を使用する)、FetchAPI、エッジサーバー上のサーバーサイドレンダリング(SSR)機能もサポートしています。
WasmEdge は、すべての標準的な WebAssembly 機能と多くの提案されている拡張機能をサポートしています。また、クラウドネイティブやエッジコンピューティングの用途に合わせた拡張機能も多数サポートしています(WasmEdge ネットワークソケット、Postgres および MySQL ベースのデータベースドライバ、WasmEdge AI 拡張機能など)。
WasmEdge のテクニカルハイライトについてはこちらをご覧ください。
WasmEdge とそれに含まれる wasm プログラムは、新規プロセスとして CLI から起動することも、既存プロセスから起動することもできます。既存のプロセス(例えば、実行中の Go や Rust プログラムから起動した場合、WasmEdge は単に関数としてプロセス内で実行されます。現在のところ、WasmEdge はまだスレッドセーフではありません。独自のアプリケーションやクラウドネイティブフレームワークで WasmEdge を使用するには、以下のガイドを参照してください。
- WasmEdge をホストアプリケーションに組み込む
- コンテナツールを使用した WasmEdge インスタンスのオーケストレーションと管理
- WasmEdge アプリを Dapr マイクロサービスとして実行する
WasmEdge プロジェクトにコントリビュートしたい場合は、CONTRIBUTING ドキュメントを参照してください。アイデアをお探しなら、"help wanted" issuesをチェックしてください!
プロジェクトロードマップで、WasmEdge の今後の機能と計画をご確認ください。
ご質問がある場合は、関連プロジェクトの GitHub issue を開くか、以下のチャンネルにご参加ください:
- メーリングリスト: [email protected] にメールを送信
- Discord: WasmEdge Discord サーバーに参加してください!
- Slack: CNCF Slack の #WasmEdge チャンネルに参加する。
- Twitter: Twitter で @realwasmedge をフォローする。
プロジェクトで WasmEdge を使用している採用者リストをご覧ください。
月に一度、コミュニティミーティングを開催し、新機能の紹介や新しいユースケースのデモ、質疑応答などを行います。どなたでもご参加いただけます!
時間: 毎月第1火曜日午後11時(香港時間)/午前7時(太平洋標準時)。