Loading...
Actions réversibles et compensation (saga d'agent)(Saga)
Un modèle pour rendre les effets de bord d'un agent annulables en toute sécurité. Structurez la trajectoire comme une saga : chaque action directe (réserver un vol, débiter une carte, créer un enregistrement) est associée à une action de compensation qui en annule l'effet métier, et chaque outil est rendu idempotent grâce à une clé d'idempotence, de sorte qu'une nouvelle tentative ou un retour arrière produise le même état final au lieu de dupliquer le travail. Lorsqu'une étape échoue en cours de route, l'agent exécute les compensations des étapes déjà réalisées dans l'ordre inverse, plutôt que de laisser le système à moitié appliqué. Il n'existe pas de retour arrière ACID automatique entre services, aussi les compensations sont-elles explicitement conçues comme l'inverse logique de chaque action. À distinguer de `durable-execution` : cette dernière persiste et rejoue une exécution pour qu'elle puisse se poursuivre jusqu'à son terme après un crash, tandis que ce modèle-ci définit comment annuler sémantiquement des effets de bord déjà validés lorsque mener l'exécution à terme n'est plus le bon résultat.
In 30 seconds
- What
- Associe à chaque action une action de compensation explicite qui annule son effet métier, en s'appuyant sur des clés d'idempotence pour que les nouvelles tentatives et les retours arrière convergent vers le même état.
- When to use
- Workflows multi-étapes répartis sur plusieurs services, où une défaillance en cours de route oblige à annuler des effets de bord déjà validés, sans retour arrière ACID automatique.
- Watch out
- Les compensations doivent être écrites correctement et rester disponibles ; une compensation défaillante ou absente laisse le système dans un état incohérent, sans reprise automatique.
Loading technique guide…