Back-end, dati e sicurezza Più dettagli C · Convenzione del settore Piattaforma: Web

Saga Pattern

Pattern Saga

Una saga collega diversi passaggi salvati in un unico lavoro aziendale. Se un passaggio successivo fallisce, viene ripetuto o viene aggiunto un altro passaggio per correggere quanto accaduto in precedenza.

Vedi come funziona
Potresti chiamarlo Saga Patternsaga distribuitaflusso di lavoro sagatransazione saga

Vedi come funziona

Esempio originale svoltoPattern Saga
Stato e recuperoPattern Sagasaga ID + local transaction -> next step; failure -> retry | compensation -> terminal state
PRENOTAZIONE VIAGGIOhotel non riuscito
  1. ✓Volo trattenutoflight_tx_7
  2. ✓Scheda caricatapay_tx_8
  3. !Hotel non disponibilehotel_tx_9
↶ Compensazione completatasaga: cancelled
MANTENERE SICUROOgni servizio esegue un passaggio locale e registra ciò che è successo.RECUPERARiprova lavoro in avanti o esegui azioni compensative esplicite.
saga ID + local transaction -> next step; failure -> retry | compensation -> terminal stateJOB
Pattern SagaAffidabilità del back-end

Un altro esempio

L'ordine `984` riserva lo stock, autorizza NT$248 e poi richiede la spedizione. La spedizione rifiuta l'indirizzo. La saga annulla l'autorizzazione e libera lo stock con lo stesso ID saga. Poi registra l'ordine come compensato.

Parti principali

  1. 01ID e stato della saga
  2. 02Servizi partecipanti
  3. 03Transazioni locali
  4. 04messaggi di esito
  5. 05Ritenta o compensazione
  6. 06Audit e recupero manuale

Usalo quando

Usa una saga quando un lavoro aziendale unico coinvolge servizi o archivi di dati. Usala solo quando un singolo passo di database tutto-o-nulla non può coprire l'intero lavoro. Definisci ogni passo salvato, azione successiva, ritento, azione correttiva e stato finale.

Non usarlo quando

Non aggiungere una saga quando un salvataggio su database può completare l'intero lavoro. Un'azione di correzione è un lavoro nuovo. Può fallire o lasciare un risultato diverso. Chiedi a una persona quando un'azione non è sicura da annullare.

Nome usato nel codice

saga ID + local transaction -> next step; failure -> retry | compensation -> terminal state

Prima di spedire

Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback.

Puoi copiare la richiesta

Outcome: Complete the task with Pattern Saga (Saga Pattern). User context: L'ordine `984` riserva lo stock, autorizza NT$248 e poi richiede la spedizione. La spedizione rifiuta l'indirizzo. La saga annulla l'autorizzazione e libera lo stock con lo stesso ID saga. Poi registra l'ordine come compensato. Technical concept or control: Pattern Saga (Saga Pattern). Why it fits: Usa una saga quando un lavoro aziendale unico coinvolge servizi o archivi di dati. Usala solo quando un singolo passo di database tutto-o-nulla non può coprire l'intero lavoro. Definisci ogni passo salvato, azione successiva, ritento, azione correttiva e stato finale. Do not use it when: Non aggiungere una saga quando un salvataggio su database può completare l'intero lavoro. Un'azione di correzione è un lavoro nuovo. Può fallire o lasciare un risultato diverso. Chiedi a una persona quando un'azione non è sicura da annullare. Engineering requirements: Define inputs, outputs, contracts, and rules that must always hold. Set authorization and input checks. Define failures, timeouts, retries, one-time effects, data moves, and compatibility limits. Operations: Add useful signals and logs that hide sensitive data. Set capacity limits and write an operator guide. Test recovery and rollback. Acceptance criteria: Contract and failure-path tests pass. Data and authorization rules still hold during retries and partial failures. Check performance limits, monitoring, recovery, and rollback. Evidence and limits (evidence boundary): Nessun singolo standard ufficiale controlla l'intero termine. Il suo significato può cambiare tra team, piattaforme o framework. Unknowns to confirm: Where the code runs, data stores, traffic shape, consistency needs, and the security boundary. Also confirm the compatibility period, service goals, and rollback limits.

Controlla questa richiesta

Review how Pattern Saga (Saga Pattern) is used now. Definition: Una saga collega diversi passaggi salvati in un unico lavoro aziendale. Se un passaggio successivo fallisce, viene ripetuto o viene aggiunto un altro passaggio per correggere quanto accaduto in precedenza. Release checks: Check contracts and invariants, authorization, and input limits. Test retries, one-time effects, timeouts, and partial failures. Verify data integrity, compatibility, monitoring, recovery, and rollback. Before changing code, list the evidence, gaps, severity, and the smallest safe fix.

C
Quanto è ufficiale questo termine?

Convenzione del settore

Le persone usano spesso questo termine al lavoro. Le fonti elencate possono supportare la pratica o i limiti. Non definiscono ogni parte del termine.

Nessun singolo standard ufficiale controlla l'intero termine. Il suo significato può cambiare tra team, piattaforme o framework.

Ambito
Solo ciò che la sorgente copre:nome canonico、definizione、implementazione、guida all'uso、linee guida per l'evitamento
stato del documento
stabile
Selezionato attivato
2026-07-30

Fonti e ambito delle prove

Fonte dell'autorità + Riferimento del termine · Amazon Web Services · stabile Saga patterns Ambito: nome canonico、definizione、implementazione、guida all'uso、linee guida per l'evitamento Ruolo qui: Riferimento diretto al termine La fonte copre: nome canonico, definizione, implementazione, guida all'uso, linee guida per l'evitamento Fonte dello sfondo Azure Architecture Center — Compensating Transaction pattern Ruolo qui: Contesto utile, non una definizione

Copia tu stesso

Il browser non è riuscito a copiare questo. Seleziona la richiesta qui sotto e copiala tu stesso.