Rishabh S Ajmera wrote a blog series about implementing a CQRS architecture with emphasis on decoupling messaging. Definitely worth checking out!
A quick overview:
- Introduction
- Current article explaining the principles being followed.
- Need for Enterprise Servicebus Frameworks and Decoupled messaging with their samples
- We will look at samples from
MassTransit
andnServicebus
documentation and will decouple publish subscribe from those samples.
- We will look at samples from
- Inventory Manager
- Inventory Manager application will be introduced. It is implementation of Greg Young's Simple CQRS Example, however making it usable for real world. Currently Inventory Manager application implements only first usecase of creating an inventory item.
- The post will focus on sending command following CQRS architecture in Inventory Manager
- Inventory Manager
- Explaining the workings of Aggregate and Event Sourcing in Inventory Manager application
- Focuses on how to ensure publishing of events upon saving of aggregate (without Distributed Transaction)
- Inventory Manager
- Thin Read layer in Inventory Manager and points of interest about implementing it