Capsule Informatiche di Lello De Luca
← Tutte le Capsule

CQRS

Dati e consistenzaPattern classico

Separare command model e query/read model, eventualmente con storage, schemi e scalabilità differenti.

Il problema

Il modello ottimale per validare e scrivere il dominio non coincide con il modello necessario a query e dashboard.

Il pattern

Separare command model e query/read model, eventualmente con storage, schemi e scalabilità differenti.

Come funziona

I comandi modificano il modello autorevole e pubblicano eventi; proiezioni asincrone alimentano read model ottimizzati. CQRS non implica automaticamente Event Sourcing.

Esempio sanitario

Benefici

  • Read model efficienti
  • Modelli più semplici per responsabilità
  • Scalabilità indipendente di lettura

Trade-off

  • Consistenza eventuale
  • Più componenti e sincronizzazione
  • Debug delle proiezioni

Quando usarlo

Quando read e write hanno esigenze realmente diverse.

Quando evitarlo

Per CRUD semplici dove un unico modello è sufficiente.

Pattern correlati

RIFERIMENTI

Fonti e riferimenti

Microservices Design Patterns - Draft

Draft caricato nel progetto

ADT - Architettura tecnica e pattern distribuiti

Capsule Informatiche · Materiale progettuale