Showing posts with label CQRS. Show all posts
Showing posts with label CQRS. Show all posts

Thursday, September 24, 2015

Another way to talk about CQRS/Event Sourcing

"A more promising model, used in some systems, is to think of a database as an always-growing collection of immutable facts. You can query it at some point in time — but that’s still old, imperative style thinking. A more fruitful approach is to take the streams of facts as they come in, and functionally process them in real-time."

Turning the database inside-out with Apache Samz
https://martin.kleppmann.com/2015/03/04/turning-the-database-inside-out.html

Monday, April 13, 2015

Architectures Comparison Summary



For Event-Driven architecture. there are two problems:
Testability and Development

But with CQRS/Event Sourcing, it is very easy to create BDD unit test.

Source:
http://www.oreilly.com/programming/free/files/software-architecture-patterns.pdf

Thursday, March 19, 2015

About Command Idempotency

Definition from Gregor (New ACID)
“In the world of distributed systems, idempotency translates to the fact that an operation can be invoked repeatedly without changing the result.”

http://www.eaipatterns.com/ramblings/68_acid.html
http://codebetter.com/gregyoung/2010/08/12/idempotency-vs-distibuted-transactions/

Idempotency Patterns
http://blog.jonathanoliver.com/idempotency-patterns/

Friday, February 27, 2015

What is unit of work and relationship with CQRS/Event Sourcing?

See
http://martinfowler.com/eaaCatalog/unitOfWork.html



But I think this pattern is not applicable for CQRS/Event Sourcing, because SAGA is the way to deal with transaction in CQRS/Event Sourcing.
Reference:
https://msdn.microsoft.com/en-us/library/jj591569.aspx

Wednesday, February 18, 2015

How to solve problem "Read access denied for stream" while reading events from event store?

Get this error on following line:
var event = connection.ReadStreamEventsForwardAsync(streamid, 0, 1, false).Result;

Need to add credential for reading
var event = connection.ReadStreamEventsForwardAsync(streamid, 0, 1, false,  new UserCredentials("admin", "changeit")).Result;

Tuesday, February 10, 2015

Reading about CQRS and event souring

Exploring CQRS and Event Sourcing
https://msdn.microsoft.com/en-us/library/jj554200.aspx

Applying CQRS and Event Sourcing in Microsoft .NET Applications TechEd Europe 2014
https://www.youtube.com/watch?v=z5FPkCgcH4M