Desenvolvimento de Software · Avançado · Inglês · Técnico
saga pattern
Padrão para manter a consistência em operações que passam por vários serviços: cada etapa tem uma ação de compensação que desfaz seus efeitos se algo falhar.
Onde usar
'O pedido usa saga: se o pagamento falhar, o estoque é devolvido'.
Exemplos
If the payment fails, the saga releases the reserved stock.
Se o pagamento falhar, a saga libera o estoque reservado.
We implemented the saga pattern to coordinate three services.
Implementamos o saga pattern para coordenar três serviços.
Cuidado
Não é uma transação ACID distribuída: a saga aceita estados intermediários visíveis e depende de compensações bem projetadas.
Sinônimos
saga
Origem
Proposto em 1987 por Hector Garcia-Molina e Kenneth Salem para transações longas em bancos de dados.