These are chat archives for RBMHTechnology/eventuate

15th
Apr 2016
gabrielgiussi
@gabrielgiussi
Apr 15 2016 12:51
Hi everyone! I'm going to ask some conceptual questions about Eventuate, CQRS and ES. I hope you can help me.
First of all, I want to felicitate those who are involved in Eventuate. I think is a great toolkit and the documentation is easy to read. Well done.

My first question, What is the use case of EventsourcedViews? I think that EventsourcedWriters should be used always instead but without any projection logic, only writing to the corresponding message broker topics/queues (like Kafka) wich allows
a Publish/Subscribe model between the microservices that want to read events and that wich publish events.
If we use EventsourcedViews or EventsourcedWriters with logic aren't we coupling C and Q sides? Or this is a case where we are trading coupling in pos of performance? (i assume that EventsourcedViews will be consistent more quickly than a RDBMS query)

I have this map in my mind:
Client send command to ->
ServiceA routes command to ->
EventsourcedActor handles command and persist event ->
EventsourcedWriter reads event and writes to ->
Kafka publish events to ->
ServiceB (this service may not use Eventuate at all).

Kafka will be acting like a central Event Log that will be read/write by all the services (this is what Jay Kreps proposes in https://engineering.linkedin.com/distributed-systems/log-what-every-software-engineer-should-know-about-real-time-datas-unifying, isn't?).