This write up is not about how to implement microservices. It’s more about what we need to consider when designing microservices architecture and when they are in use. But first we need to broadly agree on what microservices are.

What are Microservices?

It’s 2020, so most of us can define what a Microservice is, even if we have not used them. It can go something like:

  • Following Single Responsibility Principle
  • Being able to deploy them independently
  • Loosely Coupled

And if we get a bit into domain/team:

  • Organized around business domains — bounded context
  • Owned by small teams

Problems start when:

  • Microservices become the goal
  • We slap the word Micro to any service we write to sound cool and in line with the trend
  • Try to have very fine grain services by concentrating too much on word Micro and actually end up creating too many dependencies

A lot of us started with a model like the following:

#microservices #microservices-visibility #microservices-design

Microservices — Things to Consider for Designing and Monitoring Microservices
1.15 GEEK