#development #devops #golang #pattern #reading-list

🔗 Why using Microservices or Monolith can be just a detail?

Nowadays we can often hear that monolithic architecture is obsolete and responsible for all evil in IT. We often hear that microservices architecture is a silver bullet which helps to kill all this monolithic evil. But you probably know that there are almost no silver bullets in IT and every decision entails trade-offs.

One of the most favored advantages of microservices architecture is good modules separation. You can deploy every service independently and services are easier to scale. Also, every team can have their own repository and use the technology of their choice. We can easily rewrite the entire service very fast. In return, we get possible network problems, latency, limited bandwidth. You must deal with potential bugs in the communication layer. It is much harder to debug and maintain from the developer and ops perspective. We must keep services API's contracts up to date and fight with compatibility issues. We also can't forget about potential performance drawbacks. The overall complexity is greater in many areas, starting with developing and ending in administration.

continue reading on threedots.tech

⚠️ This post links to an external website. ⚠️