Implementing Saga 002 : Message Broker

In the earlier part of this series, we created the building blocks of our microservice - the individual services. To recollect, we build 3 services, namely, Order Service, Inventory Service, and Payment Service. In this part, we will continue building our example Saga implementation. In previous post, we had created endpoints in Order Service to create an … Continue reading Implementing Saga 002 : Message Broker

Circuit Breaker

The previous two blog entries were dedicated to illustrating how to use Ocelot and Polly for building Circuit Breaker. But what exactly is a circuit breaker? Let us dive into a bit of detail on the same. If one was to observe microservices or any service-oriented architectures, it would not be hard to say that … Continue reading Circuit Breaker

Backend For Frontend Pattern

In this blog post, we will discuss Backend for Frontend pattern. To be honest, I was a bit surprised and skeptical when I first heard about this pattern, but the more I thought about it, the more sense it made. So what exactly is the Backend For Frontend pattern. The Problem Consider a generic backend Web Api that … Continue reading Backend For Frontend Pattern

Anti Corruption Layer

Integration with legacy systems is often challenging. Quite often the legacy systems would be a playground of obsolete APIs and convoluted data schemes. In order to provide compatibility with the older system, the newer system often has to share some of these undesirable traits of the legacy systems and corrupt them. Usually, developers tend to … Continue reading Anti Corruption Layer

Design Patterns : Mediator Pattern

There are two reasons I thought I should be blogging about the Mediator Pattern. Firstly, I wanted to continue with the series of different design patterns and principles, filling out the missing pieces. Secondly, I would like to write a blog entry on configuring the Mediator and CQRS on a Web Api sometime soon. But … Continue reading Design Patterns : Mediator Pattern

Gof : Observer Pattern

This has been a long overdue. I had started with this series of byte sized tutorials on various patterns but never went ahead and completed the series. So here am continuing from where I left with the Observer Pattern. While working with applications, there would times you could have an object which would like to notify other … Continue reading Gof : Observer Pattern

GOF: Composite Pattern

Composite Pattern, in a way, literally takes of from where Decorator Pattern ends. One might be inclined to think of it as a specialized case of Decorator Pattern which composes one or more instances of similiar objects and manipulate them uniformly. This allows the client to work on a single entity or composition of entity … Continue reading GOF: Composite Pattern

Design Pattern : Memento Pattern

Memento Design Pattern allows to capture internal state of an object in an external object and restore it to the desired checkpoint when required, all the while being in compliance with encapsulation. The Memento Design Pattern comprises of 3 actor classes. Originator : The class which needs to have the ability to store its internal … Continue reading Design Pattern : Memento Pattern

Design Patterns : Bridge Pattern

The essence of Bridge Pattern lies in the fact that it not just decouples the abstraction from implementation, but in doing so, allows both to evolve independently. Let's consider the examples of smartphones. The underlying OS (for sake of example, let's assume its Android) improving every year. The Android has seen atleast 7 versions in … Continue reading Design Patterns : Bridge Pattern