[Feat]: Support publish/subscribe methods for async communications
- Lingua principale
- Shell
- Stelle
- 25.7k
- Fork
- 2.6k
- Merge medio
- 3g 6h
- PR unite (30g)
- 16
Descrizione
### Is your feature request related to a problem? Please describe.
Current A2A RPC methods are point-to-point methods, which requires that the caller must know about the corresponding callee. However, In some scenarios, this kind of method will be difficult to apply:
1. as time goes on, the amount of agents is likely to increase drastically, and it will be difficult for agents to perceive all newly added agents and manage all these connections.
2. For stateful tasks, temporary network outages or service failures will lead to task failures or data loss.
3. In scenarios involving a large number of long-duration tasks, these methods may lead to performance bottlenecks for both the caller and the callee.
### Describe the solution you'd like
Add Support for publish/subscribe methods:
When an agent has a task that requires async processing and does not care about which specific agent actually handles it, the agent can publish the task via the publish method, and subscribe to the task processing result via the subscribe method, then handle the result when it is idle.
The publish and subscribe methods can be implemented through message queues.
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
### Code of Conduct
- [x] I agree to follow this project's Code of Conduct
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
The issue proposes adding publish/subscribe methods using message queues for async agent communication. Start by examining the existing A2A RPC methods and agent communication patterns in the codebase. Look for any existing message queue integrations or similar async patterns. Understanding the protocol specification and agent lifecycle will be key. 'Done' means designing and implementing the new publish/subscribe methods that integrate with the existing system.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Ambito
- api, backend, distributed-systems
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100