?I’m considering adding some CQRS/ES to my app.
I used to mess about a lot with JOlivers event store etc…
I’m now looking at GetEventStore as well as the MS P&P CQRS Journey code
I can get the P&P code up and running without issue and it resembles the way I have done things in the past quite closely.
How’s everyone laying out their architecture with GES?
Previously I have had an command bus I push my commands onto, they get read by the domain service, processed and any commands are pushed onto the command bus to be read by the denormalizer service.
How does all this fit into GES? If I wanted to use azure service bus or rabbitmq - is that possible? if so, where is the configuration point? If not, how does my denormalizer get the commands?
I see there are projections coming along the way, these are not the same as a demormalized read model right? Why would I use them? What’s the use case? In my limited understanding it is so I can generate streams from streams - are these meant to provide a new ATOM feed from these streams? Is this where my denormalizer should be looking for data? That doesn’t feel right but maybe I am missing the trick somewhere?
I like the simplicity of some of the P&P code but there are a few things that bug me about it. There seems to be a lot of configuration in both XML and C# - previously I have configured by convention and I worry that the dependency on Unity and the manual configuration is too deeply engrained in the P&P code. This is subjective obviously and I am sure there is a reason for it. It’s just overkill for my use case. I just don’t like Unity and XML!
Are there any examples of running GES in a small .NET project with RabbitMQ or something? Perhaps that would be the best place for me to get started.