Automatisation Niveau 3 : Architecte
18 / 45

Module 3 · Concevoir pour l'échecEnviron 2 min

Les transactions en plusieurs étapes

Préparer une commande, chez Nadia, touche quatre systèmes : réserver le stock, émettre la facture, programmer l’enlèvement, confirmer au client. Aucune base de données ne couvre les quatre : si l’étape 3 échoue, les étapes 1 et 2 sont déjà faites. Le schéma saga prévoit, pour chaque étape, une action de compensation qui l’annule proprement, exécutée dans l’ordre inverse.

Préparer une commande : quatre systèmes, une compensation par étape
1Le départ Le client confirme sur WhatsApp sa commande d'un réfrigérateur, livraison à Meknès.

Une compensation n’efface pas l’histoire : une facture émise s’annule par un avoir, pas par une suppression. Make propose un gestionnaire d’erreur Rollback, mais il n’annule que les modules qui gèrent les transactions ; un e-mail ou un message envoyé reste envoyé. Les compensations explicites restent votre vrai filet. Écrivez chacune en même temps que l’étape qu’elle annule, jamais après l’incident.