Arquitetura de software · Comunicação · 7 min de leitura
Arquitetura orientada a eventos, CQRS e sagas
Serviços que reagem a eventos, modelos separados para escrita e leitura, e transações longas feitas de passos com compensação.
Arraste para o lado para ver o diagrama inteiro.
Orientada a eventos
Serviços publicam fatos (“pedido criado”) e outros reagem. Isso desacopla times e permite acrescentar consumidores sem mudar o produtor. O preço é a consistência eventual e o rastreamento mais difícil.
CQRS
Separar o modelo de escrita (comandos, validação de regras) do de leitura (consultas otimizadas, muitas vezes desnormalizadas e atualizadas por eventos). Vale quando leitura e escrita têm necessidades muito diferentes; em sistemas simples, só adiciona complexidade.
Sagas
Uma saga quebra uma transação de negócio em passos locais. Se um falha, executam-se compensações dos passos anteriores. Pode ser coreografada (cada serviço reage a eventos) ou orquestrada (um coordenador manda os comandos).
Em resumo
- Eventos desacoplam produtores e consumidores.
- CQRS separa escrita e leitura quando compensa.
- Sagas = passos locais + compensações.
- Aceite consistência eventual e invista em rastreamento.