iii: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか
iii: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか
解決する問題
iiiは、バックエンドサービス間のポイント・ツー・ポイントの統合に代わる、共有ランタイムです。新しい機能(キュー、cron jobs、オブザーバビリティなど)をソフトウェアスタックに追加するプロセスを、単一のライブシステム表面に集約することで簡素化し、個別のベンダー統合や設定の必要性を減らします。
仕組み
iiiは、サービスを管理するために3つのコア・プリミティブを使用します:
- Workers: エンジンに登録し、特定の機能を提供するプロセス(Node.js、Python、Rust、またはGoで記述)。
- Functions: ワーカー内で存在する、安定した識別可能な作業単位(例:
orders::validate)。 - Triggers: HTTPエンドポイント、cronスケジュール、またはキューのサブスクリプションなど、関数がいつ実行されるべきかを定義する宣言的なルール。
このアーキテクチャにより、開発者やAIエージェントは、システム全体で関数をリアルタイムに発見し、呼び出すことができます。エージェントは、実行時に新しいワーカーを追加してシステムの機能を拡張することさえ可能です。
対象ユーザー
- Platform teams: インフラストラクチャ機能を提供するためにワーカーを公開するチーム。
- Application teams: 関数を登録し、トリガーを宣言するチーム。
- AI agent developers: 共有カタログを介して、エージェントがシステムの機能を探索、使用、拡張できるようにしたい開発者。
ハイライト
- ゼロ・インテグレーション・サーフェス: 手動のベンダーセットアップの代わりに、
iii worker addを介して機能を追加。 - マルチ言語サポート: Node.js、Python、Rust、およびGo用のSDKが利用可能。
- エージェント対応: エージェントが読み取り可能なリファレンス資料(「skills」)を含み、エージェントが実行時にワーカーを追加することを許可。
- 統合されたオブザーバビリティ: トレース、ログ、およびリアルタイムの状態を検査するための組み込みコンソール。
Sources
- undefinediii-hq/iii