Zum Inhalt springen

Command-Query-Responsibility-Segregation

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 13. Juli 2014 um 21:30 Uhr durch MovGP0 (Diskussion | Beiträge) (Nachteile). 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]

Trivia

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

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.

Frameworks

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).