- 開発者フレンドリーなオープンソースのサーバーレスインフラプラットフォームで、AIエージェント、リアルタイムアプリケーション、ゲームサーバーなどの複雑なバックエンドを手軽にデプロイ&スケール可能
- 技術スタック: Rust, V8, Deno, FoundationDB, CockroachDB, ClickHouse, Valkey, NATS, Traefik
- Stateless Functions、Stateful Actors、Containerized Workloads などの多様な機能を統合プリミティブとして提供
- Stateless Functions(ステートレス関数): APIサーバーなど、リクエスト/レスポンス中心のワークロードに適している
- Stateful Actors(ステートフルアクター): メモリ状態を維持するリアルタイムサービスの構築に最適
- Sandboxed Containers: 重い処理や信頼できないワークロードにも安全に対応
機能
- Stateful Persistence
- Rivet Actorはメモリ上にデータを保持し、自動的にディスクへ永続的に保存される
- ゲームロビー、共同編集ドキュメント、キャッシュなどの動的な状態管理に適している
- リモート関数呼び出し(RPC)
- 軽量なクライアント-サービス間メッセージングを標準で内蔵
- クライアント/アクター間の型安全なリモートプロシージャコール(RPC)とブロードキャストをサポート
- 外部メッセージブローカーなしでリアルタイム通信アーキテクチャを構築可能
- No Cold Starts
- サービスはIdleモードでHibernateし、必要時に即座にアクティブ化される
- 長時間実行(Long-Running)アクターは非アクティブ時に"Sleep"へ入り、次のリクエスト時に即座に状態を復元
- エンドユーザー視点でCold-Start Recoveryと一貫したLow-Latencyを提供
- エッジ分散
- バックエンドコードをユーザーに近い場所へデプロイ可能
- 超低遅延のため、RivetはActorと関数をグローバルエッジへデプロイ
- HTTP, WebSocket, TCP, UDPプロトコルをサポートし、外部プロキシなしでグローバルエッジへデプロイ可能
- 無制限の実行時間、コンテナ対応
- 長時間実行プロセスやバックグラウンドジョブに制限なし
- Docker互換コンテナであればすべてサポート(Dockerで動作すればRivetでも動作)
- Fault Tolerance
- アクター状態が継続的に保存されるため、障害発生時や再スケジューリング時にも中断なく状態を復旧可能
- インテリジェントルーティングと組み合わせて高可用性を保証
- ローカル開発支援
rivet dev または Docker Composeでローカルクラスターを即座に起動・テスト可能
- 本番デプロイ前にローカルで反復開発が可能
主な活用事例
- AIエージェント
- マルチテナントSaaS
- Local-firstアプリ
- コラボレーションアプリケーション
- サンドボックスコード実行
- ゲームサーバー
- Yjs同期/ストレージ
- チャットアプリ
1件のコメント
Rivet - マルチプレイヤーゲームサーバー管理システムのオープンソース
2年前はオープンソースのゲームサーバー向けでしたが、今では一般的なサーバーレスへと拡張され、さまざまなユースケースをサポートするようになったようですね。