Microservice API Versioning


Architecture, Distributed Systems, Microservices, Software, Technology

I didn’t realize until recently that something as mundane as versioning was such a controversial topic. There are conflicting opinions on every aspect of versioning APIs. “Every API must be versioned!” “Avoid versioning your APIs!” “Version only when needed.” “Version right from the beginning.” “Version the URL.” “Version the Headers”. And on it goes. So I […]

July 10, 2018

Microservices Communication – Part 5 – Event Sourcing, CQRS and Sagas


Architecture, Distributed Systems, Microservices, Software, Technology

In the previous post, I spoke about how we used an Event driven architecture with Finite State Machines to simplify complex problems and as a means of communicating between different services. However there are several issues to consider when using Events that will require specific design choices and trade-offs to be made, which will affect […]

March 10, 2018