O que é Event Sourcing?

2021-12-10

Event Sourcing é uma técnica de arquitetura de aplicações distribuídas onde todas as mudanças de estado da aplicação é armazenado em uma estrutura de registro (log).

O objetivo é ter registrado todos os eventos e todas as mudanças de estado que ocorreram como efeito dos eventos processados. Dessa forma é possível não só reconstruir o estado da aplicação em diferentes instantes de tempo no passado, mas também realizar um branch no histórico do sistema caso o sistema processe algum evento fora da ordem em que ele foi emitido.

Imagine uma aplicação como se fosse um grande repositório distribuído de Git. Um commit poderia ser considerado como "evento" no universo do Git. O histórico de commits em uma branch é o resultado de vários processamentos de eventos do tipo commit.

No Git você pode navegar no estado anterior do código fonte. Você pode retroceder e avançar no tempo. Você pode retroceder e partir em outra direção em um novo branch. Você pode usar o mesmo modelo mental ao pensar sobre aplicações que usa arquitetura baseada em Event Sourcing.

##Referências

#arquitetura

📝 Edite esta página