WARNING: Please note that this article was published a long time ago. The information contained might be outdated.
The following is a list of interesting teaching materials about CQRS and Event Sourcing. I'll try to keep it updated. The order is important.
Must read before anything else
- ☑ Article CQRS, Task Based UIs, Event Sourcing agh! by Greg Young
- ☑ Article CommandQuerySeparation by Martin Fowler
- ☑ Article CQRS by Martin Fowler
- ☐ Article Event Sourcing by Martin Fowler
- ☐ Article When to avoid CQRS by Udi Dahan
Courses
- Introduction to DDD, CQRS, and Event Sourcing, a video course
Introduction to basic concepts
- ☑ Article Why use Event Sourcing? by Greg Young
- ☑ Article Quick Thoughts on Eventual Consistency by Greg Young
- ☑ Article CQRS and Event Sourcing by Greg Young
- ☑ Video CQRS - An Introduction for Beginners and slides by Jonathan Oliver
- ☑ Video High-Performance Distributed Systems with CQRS by Jonathan Oliver
- ☑ Video Practical Event Sourcing and slides by Mathias Verraes
- ☑ Article DDDD: Why I Love CQRS by Jonathan Oliver
- ☑ Video CQRS and Event Sourcing by Greg Young
- ☐ Video GregYoung 8 CQRS Class and documents by Greg Young
- ☑ Video (divided in 12 parts) on CQRS by Erik Rozendaal
- ☑ CQRS part 1 of 12 - introduction, background
- ☑ CQRS part 2 of 12 - from three tier to CQRS
- ☑ CQRS part 3 of 12 - events
- ☑ CQRS part 4 of 12 - event sourcing, reporting
- ☑ CQRS part 5 of 12 - domain vs reporting logic
- ☑ CQRS part 6 of 12 - encapsulated domain model
- ☑ CQRS part 7 of 12 - (a)synchronous
- ☑ CQRS part 8 of 12 - event sourcing vs ORM
- ☑ CQRS part 9 of 12 - event sourcing vs ORM, auditing, history
- ☑ CQRS part 10 of 12 - command and event design
- ☑ CQRS part 11 of 12 - system integration, performance and scalability
- ☑ CQRS part 12 of 12 - testability, storing commands, production support
- ☑ Video CQRS, ReactJS, Docker by Claudio D'Alicandro, Simone Di Maulo, and Andrea Giuliano
- ☐ Video Event Sourcing by Martin Fowler
- Video Event Sourcing and Immutable infrastructure by Greg Young and James Nugent
- Video An introduction to event sourcing by Chris Riley
More advanced stuff
PHP frameworks, libraries and useful tools:
- Prooph, CQRS and EventSourcing Infrastructure for PHP
- Broadway, Infrastructure and testing helpers for creating CQRS and event sourced applications. More info here.
- Eidetic, Eidetic is a CQRS and EventSourcing library for PHP
Implementation Examples
- Proophessor Do
- LiteCQRS for PHP
- Laravel Broadway, an adapter for the Broadway package