

Login to reply
Replies (1)
Microservices is an anti-pattern.
Adding network hops, routing, and potential for cascading failure between every backend function call seriously hamstrings a company in the long term, all so lazy developers can sling out new services without caring about the greater codebase or long term production salience.
While idependent backend services do allow backend teams to work based upon a well defined interface, deploy and scale separately, they come at the extreme cost of a network hop and all the complexity it entails (fault tolerance, instrumentation, latency, etc, etc), and so they should be used very cautiously.
Big companies go further by leaning into a monorepo architure to maximize in-process code reuse (functions) while still organizing code (folders) and deploying using a shared procedure with a single, unified process architecture.
The network is not free. The network is the most expensive thing. Reduce the amount of disparate, chatty backend services and increase the amount of same language, same process, unified code.
View quoted note →