Parallel Saga: Assíncrono, Consistência Eventual e Orquestrado
Note over O: Inicia a fase em paralelo
O->>S1: Mensagem "Executar Etapa"
O->>S2: Mensagem "Executar Etapa"
O->>S3: Mensagem "Executar Etapa"
par Processamento
S1-->>O: Resposta (Sucesso ou Falha)
S2-->>O: Resposta (Sucesso ou Falha)
S3-->>O: Resposta (Sucesso ou Falha)
end
alt Alguma falha
O->>S1: Compensar se S1 teve sucesso
O->>S2: Compensar se S2 teve sucesso
O->>S3: Compensar se S3 teve sucesso
O-->>O: Registro de rollback e encerramento da fase
else Todas sucesso
O->>O: Fase concluída, pronto para próxima
end
Fan-out: O orquestrador envia instruções a cada serviço quase simultaneamente.Processamento Paralelo: Cada serviço trabalha em seu próprio ritmo, devolvendo sucesso/falha quando terminar.Decisão: Se ocorrer falha em qualquer serviço, o orquestrador inicia compensações nos outros que obtiveram sucesso.7. ConclusãoO Parallel Saga (Assíncrono, Consistência Eventual, Orquestrado) oferece um modelo em que atividades podem ser executadas ao mesmo tempo, sob a supervisão de um orquestrador que coleta respostas e dispara compensações em caso de falhas. Esse formato explora:Comunicação via mensageria ou eventos, permitindo maior desacoplamento,Consistência baseada em “confirma e compensa”, aceitando estados intermediários,Coordenação central que gerencia fases paralelas, melhora a performance geral e organiza as lógicas de rollback.Trata-se de um padrão útil para cenários onde várias operações podem rodar simultaneamente sem bloqueios, enquanto se mantém a segurança de uma “saga” — ou seja, a capacidade de reverter tudo, caso algo dê errado.