Introdução a Event-driven Architecture


Quando estamos trabalhando com a Arquitetura de Microsserviçosexistem basicamente duas naturezas de comunicação, síncrono e assíncrono.

O Event-driven Architecture (Arquitetura orientada a eventos) implementa o modelo de comunicação assíncrona.

Relembrando

A comunicação síncronaexpõe as APIs baseadas na arquitetura RESTou gRPCsob o protocolo HTTP. Nesse modelo utiliza-se de chamadas bloqueantes, ou seja, o cliente da API deve aguardar o retorno do processamento da requisição.

Idealmente, no contexto de microsserviços, cada serviço deve ter um baixo acoplamento e comunicar-se via Message-passing pattern ou Event-driven Architecture

Dito isso, o Event-driven Architecture é um modelo onde os sistemas reagem a eventos em vez de serem acionados por chamadas síncronas. Um evento pode ser qualquer mudança significativa no sistema, como o envio de uma mensagem, a atualização de dados ou o clique de um botão.

Abaixo um exemplo com a visão geral de um sistema que implementa esse tipo de arquitetura.

Referências


https://medium.com/@marcelomg21/event-driven-architecture-eda-em-uma-arquitetura-de-micro-servi%C3%A7os-1981614cdd45

https://aws.amazon.com/pt/event-driven-architecture/