← Graph

Saga Pattern

concept 8 connections

Pattern (also referred to as a distributed service manager / process manager) used to deal with reactor synchronization errors, especially with external systems lacking idempotency. When a request to an external system times out, a saga periodically checks whether the action took effect; if so it sources an event, otherwise it retries or escalates (e.g. emails a human to phone the external party). Davydov frames a saga as a business transaction (e.g. booking a business trip with hotel, flights, cars) that can be implemented as a state machine and must roll back preceding steps on failure. Built specifically to manage error cases.

category
pattern
about
Saga Pattern concept
Recommended for handling reactor synchronization errors with non-idempotent external systems.
about
Saga Pattern concept
Mentions saga patterns as inspiration from wroclove.rb.
about
Saga Pattern concept
Mentions sagas as the standard way to implement long-running automations that consume multiple events.
about
Saga Pattern concept
Answer introduces sagas for multi-event automations.
about
Saga Pattern concept
Introduces sagas as business transactions modeled as state machines.
The funds-transfer example is effectively a process manager / saga across two account streams.
concept Saga Pattern
related_to
Reactor concept
Sagas address reactor synchronization errors with non-idempotent external systems.
related_to
Saga Pattern concept
Stateful long-running automations are typically implemented as sagas.

Provenance

Read by
27 extractions