1 / 14

Investigating CQRS

Investigating CQRS. Mark J. Miller http://www.developmentalmadness.com. Overview. Introducing CQRS Investigating SimpleCQRS framework Extending SimpleCQRS Adding IoC Replacing “storage” (Event Sourcing, Read Model) Client Ids Optimizing Serialization Guaranteed Delivery

meda
Download Presentation

Investigating CQRS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Investigating CQRS Mark J. Miller http://www.developmentalmadness.com

  2. Overview • Introducing CQRS • Investigating SimpleCQRS framework • Extending SimpleCQRS • Adding IoC • Replacing “storage” (Event Sourcing, Read Model) • Client Ids • Optimizing Serialization • Guaranteed Delivery • Event Store transparency (how do I look at the data?)

  3. Introducing CQRS • Impedance Mismatch • Command-Query Responsibility Segregation • CQRS != Event Sourcing • Eventual Consistency not required (but it helps) • Idempotence and Guaranteed Delivery (At-least once) • Very DDD friendly – (Read the book)

  4. Command/Query Responsibility Segregation Queries View Model UI Queries Commands Publish WS Input View Model Updater Validation Validation Rules DB

  5. Demo SimpleCQRSGui

  6. SimpleCQRS

  7. SimpleCQRS Process Flow

  8. Extending SimpleCQRS • Adding IoC • Replacing “storage” (Event Sourcing, Read Model) • Client Ids • Optimizing Serialization • Guaranteed Delivery • Event Store transparency (how do I look at the data?)

  9. 7 6 5 4 3 2 1

  10. 6 5 snap 4 3 2 1

  11. Comb?

  12. CQRS Samples • SimpleCQRS – Greg Young • http://github.com/gregoryyoung/m-r • Fohjin.DDD – Mark Nijhof • http://github.com/MarkNijhof/Fohjin/tree/master/Fohjin.DDD.Example/ • CQRS Kitchen – Dennis Doomen • http://thecqrskitchen.codeplex.com/

  13. Did you mean CARS? • CQRSInfo.com • http://groups.google.com/group/dddcqrs • Greg Young - codebetter.com/blogs/gregyoung • UdiDahan – www.udidahan.com • Mark Nijhof - elegantcode.com • Jonathan Oliver - jonathan-oliver.blogspot.com • DDD: • Domain-Driven Design, Eric Evans • http://www.infoq.com/minibooks/domain-driven-design-quickly • Comb: • http://www.informit.com/articles/article.aspx?p=25862&seqNum=7 • http://sqlblog.com/blogs/alberto_ferrari/archive/2007/08/31/how-are-guids-sorted-by-sql-server.aspx

More Related