- Spinは、サーバーレスWebAssembly(Wasm)アプリケーションをどこでも構築、デプロイ、実行できるオープンソースの開発ツール
- 小型で移植性の高いバイナリ、低い起動遅延、高いスループットを提供し、さまざまな環境でアプリケーションを実行できる利点がある
Spin 3.0のハイライト
- Wasmの軽量性、起動の速さ、安全性により、サーバーサイドのユースケースに適しており、コンテナが遅いまたは大きい場合、サンドボックス化が必須な場合、サーバーレスのユースケースで有利
- WebAssembly Component Modelは、さまざまなプログラミング言語間の相互運用性を標準化し、開発者により多くの可能性を提供
- コンポーネント依存関係 - マルチ言語プログラミングの容易さ
- Spin 3.0は、Rustで書かれたライブラリをJavaScriptアプリケーションで依存関係として利用するような開発ワークフローを導入。
- OCIレジストリでコンポーネントを保存、検索、取得でき、npm/NuGet/crates.ioのような体験を提供。
- 選択的デプロイ - 1つにビルドして選択的にデプロイ
- Spinアプリケーションの一部コンポーネントをローカルまたはSpinKube経由で実行可能。
spin up --component-idフラグを使って実行するコンポーネントを指定でき、プラットフォームエンジニアが特定の要件を満たすノード上で選択的にコンポーネントを実行できる新しいシナリオを提供。
- WASI標準との深い統合
- SpinプロジェクトはWASI APIに貢献し、これをSpinに統合することでコミュニティのニーズに応えようとしている。
- WASI Key-ValueおよびWASI Config APIがSpinで正式にサポート。
- OpenTelemetry(OTel)統合 - オブザーバビリティを内蔵
- Spin 3.0はOpenTelemetry(OTel)によるオブザーバビリティを正式サポートし、Grafana、Jaegar、Prometheusのようなツールと統合できる。
spin otelプラグインにより、オブザーバビリティスタックの設定が容易。
- Spin Factors - 主要ランタイムのリファクタリング
- Spinの内部構造をSpin Factorsという機能によって大幅にリファクタリングし、モジュール性を強化。
- Spinランタイムの拡張がより容易になり、プロジェクトをフォークする必要はあるが実現可能。
- デモ - Spin 3.0の活用
- Spin 3.0のコンポーネント依存関係機能を活用し、Rustで画像変換コンポーネントを構築し、これをJavaScript/TypeScriptコンポーネントの依存関係として利用する例を提供。
spin depsプラグインを使用してOCIレジストリにコンポーネントを公開し、他言語で書かれたWasmコンポーネントから利用できる。
- エコシステムの現状
- 複数のCLIプラグインやトリガープラグインが登場しており、SpinKubeプロジェクトの新しいリリースもある。
- 選択的デプロイを含む新機能が追加。
1件のコメント
OTel は今やデフォルトのようです