Zum Inhalt springen

Command-Query-Responsibility-Segregation

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 10. Januar 2015 um 22:08 Uhr durch Inkowik (Diskussion | Beiträge) (Internetlinks). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Funktionsprinzip von CQRS mit Event Sourcing

Die Command-Query-Responsibility-Segregation (CQRS, sprich: kəmænd:kwiri:rispɑnsəbɪləti:sɛgrəgeʃən bzw. si:kju:ɑr:ɛs)[1] (etwa: „Kommando-Abfrage-Zuständigkeits-Trennung“) ist eine Variante des QCS-Prinzips auf Datenbank-Abfragen, welches durch Greg Young definiert wurde.[2]

Vorteile

Nachteile

  • Hoher Aufwand in der Softwareentwicklung. Eignet sich eher für Projekte mit vielen gleichzeitigen Benutzern
  • Benötigt passende Infrastruktur
  • Transaktionen sind schwer umzusetzen
  • Queries können durchgeführt werden, bevor Commands durchgeführt wurden. Es werden daher Versionierung und ein In-Memory-Cache benötigt um sicherzustellen, dass der Client Daten in der richtigen Version erhält.

Trivia

Die Abkürzung CQRS wird von Softwareentwicklern aufgrund der Google-Autokorrektur scherzhaft als cars (sprich: kɑrz) ausgesprochen.

Frameworks

.NET
JVM

Quellen

  1. Martin Fowler: CQRS. 14. Juli 2011, abgerufen am 18. Mai 2014 (englisch).
  2. Greg Young: CQRS Documents by Greg Young. (PDF) In: WordPress. November 2010, abgerufen am 13. Juli 2014 (englisch).