CQRS, asset architetturale

Ogni applicazione software è un universo a sé, ogni applicazione necessita di asset architetturali differenti, CQRS è uno di essi.

In sostanza, un modello per modificare i dati ed un modello differente per leggere i dati. CQRS è l’acronimo di Command Query Responsibility Segregation ed ha come padre Greg Young.

Cosa è un modello?
Un modello è in sostanza una classe che rappresenta un’entità reale, o almeno, ne rappresenta le proprietà interessanti per il sistema (il contesto in cui il modello verrà utilizzato).

CQRS separa le responsabilità in due grandi blocchi, questi sono l’essenza di fondo dell’architettura.

Command: un metodo che esegue un azione e modifica un modello.
Query: un metodo che legge un modello e restituisce i dati.

Un Command si limita a modificare un modello senza effettuare nessuna lettura successiva. Sarà un evento asincrono che si preoccuperà di aggiornare il modello di di lettura, su cui potranno essere eseguite le Query. Il modello di lettura in genere utilizza un database NoSQL per avere dalla sua le migliori prestazioni oltre a poter scalare in modo migliore. Non è difficile immaginare uno scenario in cui venga utilizzato una persistenza relazionale come modello di scrittura ed una persistenza NoSQL come modello di lettura.

Dal blog

Quello che impariamo, lo scriviamo.

Parliamone

Raccontateci il progetto. Rispondiamo entro un giorno lavorativo.

Scriveteci due righe: fissiamo mezz’ora per capire se possiamo esservi utili. Nessun impegno, nessun preventivo a scatola chiusa.

info@softwaredevelopmentvault.com
il modo più sicuro per raggiungerci
+39 0331 1587905, lunedì–venerdì 9–12 e 14–17
Via Gavinana 19, Busto Arsizio (VA)