4 ms·
I think the complexity claims for microservices are way overblown. There are a set of trade offs to be made on both microservices and monoliths. For microservi
by doctor_eval 5y ago
I think the complexity claims for microservices are way overblown. There are a set of trade offs to be made on both microservices and monoliths.
For microservices you need a good idea of how you’re going to do IPC and how you’re going to maintain isolated state. In most cases there are reasonably easy solutions to both problems, but in general there is a little bit more more up-front work to do when starting with microservices.
For monoliths you need a good understanding of how you are going to upgrade a running system without downtime, and how you are going to stop developers from taking stupid shortcuts that create invisible internal coupling. IMO, if your team is big enough to have the necessary processes to get this right, it’s big enough to deal with microservices too.
So I honestly don’t get the hate from some on HN for microservices. You can fuck anything up if you try hard enough, but microservices epitomise the principles of good systems engineering, most particularly around separation of concerns. I honestly don’t understand why anyone would choose a monolithic architecture for a new build in 2022.
- snapdaddy 5y agoThe reason for choosing monolithic architecture is simple: velocity. You need to move fast and be nimble until you are able to find a product that people want and/or need to use. The people who (at least initially) advocated for microservices were the first to point out that it is better to start as a monolith and then refactor into microservices as required by external factors.
- doctor_eval 5y agoI’ve built large systems with both architectures and I strongly disagree that monoliths are more nimble or that they give you more velocity. I don’t think this claim stands up to much scrutiny at all. I know the advice is to build a monolith first, and I used to think that too. But I now think it’s probably not good advice. Each to their own, but I won’t be building a monolith again.