DEV Community

Thiago da Silva Adriano
Thiago da Silva Adriano

Posted on

CQRS — Command Query Responsibility Segregation

CQRS (Command Query Responsibility Segregation) é um padrão arquitetural que separa operações de escrita (commands) das operações de leitura (queries).

Em vez de um único modelo que trata leituras e gravações, o sistema passa a ter modelos e caminhos distintos para cada responsabilidade, permitindo otimizações independentes.

Conceito básico

Command: solicitação que altera o estado do sistema (ex.: CriarPedido, AtualizarCliente). Não retorna dados do modelo, apenas indicação de sucesso/erro.

Query: solicitação que recupera dados (ex.: ObterDetalhesPedido). Não altera estado — pode ser otimizada para leitura.

A seguir temos uma imagem demonstrando como funciona este fluxo:

link

Top comments (0)