/outbox-pattern-dotnet-6

Exemplo de implementação do Outbox Pattern usando Apache Kafka e .Net Core 6.0 com Minimal Api

Primary LanguageC#

Event-Driven: Outbox Pattern

Trabalhar em sistemas distribuídos é um grande desafio, dado a grande quantidade de conceitos e padrões computacionais que um engenheiro de sistemas precisa conhecer e saber aplicar.

Nesse tipo de sistemas, fica evidente que o estilo arquitetural Event-Driven começa a ser um padrão adotado para resolver problemas na comunicação entre os serviços, trazendo uma maior responsividade - Neste caso, otimizar o tempo de resposta das aplicações, às aplicações.

Implementar uma arquitetura distribída com base em Event-Driven traz alguns desafios, e um deles é a Garantia da Entrega de mensagens ou Guaranteed Delivery, que é um padrão de design com o qual, uma arquitetura passa a dar a capacidade de resposta de que, mesmo usando Microsserviços, a plataforma como um todo, passe a dar garantias de que as mensagens transitarão de um serviço para o outro, através de mensageria e processamentos em background.

Esse repositório traz a implementação do padrão arquitetural Outbox Pattern em um projeto usando as seguintes tecnologias:

Para rodar o projeto, faça o clone do projeto e rode a linha de comando abaixo para subir os containers:

> docker-compose -f docker-compose.yaml up -d

⚠️ PS.1: O conteúdo do docker-compose contempla APENAS o SQL e o Apache Kafka.