Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

Architecture

Orleans Smart Cache Pattern

I discovered the Orleans Smart Cache Pattern by listening to a talk by John Azariah and Sergey Bykov.  The idea is that you can use Orleans as a distributed cache in front of (permanent) storage.  This is really ideal if you have a read heavy system, which most are.  You could optionally also choose to buffer your writes when you make state changes.  Ultimately you will reduce load on your storage by accessing data/state from memory. Blog Post Series: Part 1 – Practical Orleans Part 2 – Grains and Silos Part 3 – Smart Cache Pattern Part 4 – Event Sourced… Read More »Orleans Smart Cache Pattern

Mediator between Integration Boundaries

If you have followed my Fat Controller CQRS Diet series, you will see that I use the mediator pattern. More specifically I use MediatR library in all the code examples. I recently gave a talk at CodeMash 2017 with the same title.   It went a bit more in depth about why and where I use the mediator pattern. Integration Boundary I want to decouple my application from the framework I’m using. The mediator pattern is one way of achieving that. My code should be be my code.  Not littered through framework code. Generally, I don’t want to have any dependencies on MVC, Web API,… Read More »Mediator between Integration Boundaries

How to get started with CQRS & Event Sourcing

When I first heard about CQRS & Event Sourcing concepts through various blogs and videos, primarily from Greg Young and Udi Dahan, I wanted to apply it everywhere. It seems really natural to want to take the limited knowledge we have about a new concept or technology and try and apply it to any problem. Most of us know this is a terrible idea, but we are so tempted to push the concepts on a problem that it just doesn’t fit. I realize I’m grouping CQRS and Event Sourcing together in this post.  Generally, if you are applying Event Sourcing then… Read More »How to get started with CQRS & Event Sourcing