a2aproject / a2aproject/a2a-go
Durable storage backend support (NATS JetStream / Redis / Postgres)?
- 主要言語
- Go
- スター
- 461
- フォーク
- 93
- 平均マージ
- 2日 21時間
- マージ済み PR(30日)
- 9
説明
Hi team 👋
I’ve been evaluating a2a-go for use in a multi-VM environment (Fly.io single-container VMs).
One limitation I’ve run into is that the current task manager and event queue appear to be in-memory only, meaning:
- tasks and events are not durable
- state is lost on process/VM restart
- multi-node / cluster deployments can’t coordinate work
Before building my own backend layer, I wanted to ask:
Is there any existing or planned support for a durable backend?
(E.g. NATS JetStream, Redis, or Postgres)
Specifically, I’m looking for a way to persist:
task queue
task execution state
event log
task results
The Python ecosystem has a2a-redis, but I couldn’t find an equivalent for Go.
Is durable storage on the roadmap for a2a-go, or should implementers provide their own backend via the extension points being discussed in issue #115?
Thanks!
コントリビューションガイド
調査の方向性
この issue では issue #115 の拡張ポイントに言及しています。まずその議論を読んで、バックエンドインターフェースを理解してください。タスクマネージャーとイベントキューのコードを確認し、現在どこでストレージがメモリ内に保持されているかを確認してください。Python エコシステムの a2a-redis に、バックエンド実装の既存の例があるか確認してください。「Done」とは、NATS JetStream、Redis、または Postgres を使用した、タスクキュー、実行状態、イベントログ、結果のための永続的なバックエンドを意味します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- postgresql, redis
- 領域
- backend, databases, distributed-systems
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 40/100