Command Query Verantwortung Segregations

Die Command Query Verantwortung Segregations ( CQRS [ kə’mæ: nd ‚kwɪ (ə) ri, ri, spɑnsə’bɪləti, sɛgrɪ’geiʃ (ə) n ] BZW. [ sagen kju: ɑ: r ɛs ] , [1] englisch für ETWA Befehl Abfrage-Zuständigkeits-Trennung ) ist a Variante der CQS-Prinzip auf Datenbank-abfragen, Durch Welchen Greg Young Definiert Wird. [2]

Vorteile

  • Hohe Skalierbarkeit
  • Eignet sich zum Einsatz in Serviceorientierten Architekturen , etwa im Cloud Computing
  • Schreib- und Lesezugriffe mind unvermindert voneinander skalierbar
  • Verbesserte Sicherheit durch getrennte Rollen der Schreib- und Leseoperationen
  • Simultaner Einsatz verschiëner Versionen derselben Software
    • Beibehaltung von Rückwärtskompatibilität MÖGLICH
    • Migration auf neue Version im Live-Betrieb ohne Downtime möglich
  • Anpassbare und geänderte Geschäftsanforderungen
  • Entwicklung der einzelnen Bestandteile
  • Kann mit Event Sourcing kombiniert werden

Nachteile

  • Hoher Aufwand in der Softwareentwicklung. Eignet sich eher für Projekte mit vielen gleichzeitigen Nutzern.
  • Geeignete geeignete Infrastruktur.
  • Transaktion sind schwer umzusetzen.
  • Abfragen 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 erhalten.

Trivia

Die Abkürzung CQRS Wird von Softwareentwicklern aufgrund wo Google – Autokorrektur scherzhaft als Autos [ kɑrz ] ausgesprochen.

Frameworks

.NET
  • Tyrone- Waldungen : SimpleCQRS. In: GitHub. Abgerufen am 21. Juli 2014 (englisch).
  • Das Ncqrs-Framework. In: GitHub. Abgerufen am 13. Juli 2014 (Englisch, CQRS-Framework für das .NET Framework ).
JVM
  • Axon-Rahmen. Abgerufen am 13. Juli 2014 (englisch, CQRS Framework für die Java-Laufzeitumgebung ).
JavaScript
  • wolkenkit. Abgerufen am 27. Juni 2017 (Englisch, CQRS, DDD und Event-Sourcing-Framework für JavaScript).

Weblinks

  • CQRS Reise. In: Muster und Praktiken, MSDN. Microsoft, Juli 2012, abgerufen am 13. Juli 2014 (englisch, Tutorial zu CQRS und Event Sourcing in C # ).
  • Kanasz Robert: Einführung in CQRS. In: CodeProjekt. 21. März 2013, abgerufen am 13. Juli 2014 (englisch, Einführung in CQRS in C # ).
  • Greg Young: CQRS / DDD von Greg Young. In: YouTube. Rinat Abdullin, 20. Januar 2012, abgerufen am 13. Juli 2014 (englisch, Einführung in CQRS und DDD ).
  • Lev Gorodinsky: Domain-Driven Design, Event-Sourcing und CQRS mit F # und EventStore. In: YouTube. DC F # Meetup, 6. März 2014, abgerufen am 13. Juli 2014 (Englisch, CQRS und EventSourcing in F # ).
  • Golo Roden, Matthias Wagler und Susanna Roden: Cloud-Kit – Das semantische JavaScript-Backend für die ereignisgesteuerte Entwicklung . Abgerufen am 9. Juli 2017 (PDF, Englisch, Einführung in CQRS, DDD und Event-Sourcing)

Quellen

  1. Hochspringen↑ Martin Fowler: CQRS. 14. Juli 2011, abgerufen am 18. Mai 2014 (Englisch).
  2. Hochspringen↑ Greg Young: CQRS Dokumente von Greg Young. In: WordPress. November 2010, abgerufen am 13. Juli 2014 (PDF, Englisch).