O saga gestionează o tranzacție de afaceri care se extinde pe mai multe servicii ca o secvență de tranzacții locale. Dacă o etapă eșuează, saga execută tranzacții compensatorii pentru a anula etapele anterioare — nu există rollback distribuit.
De ce nu o tranzacție distribuită?
Commit-ul în două faze pe servicii este lent, blochează resurse și cuplează disponibilitatea. Sagele oferă consistență eventuală fără încuietori distribuite.
