3 ms·
The title should be "I've never implemented microservices properly, so you should avoid them."
by gjolund 10y ago
The title should be "I've never implemented microservices properly, so you should avoid them."
- jsmith0295 10y agoI think a lot of people don't implement them properly. And if you're an individual or a small team trying to build something it's usually overkill.
- exabrial 10y agoAgree 100% with both of these statements. A general rule seems is to divide them on transactional boundaries and business concerns.
- lgunsch 10y agoI'm curious what makes you think that. At the end his bio says he has 12 years of experience, and from his blog seems to know a thing or two.
- gjolund 10y agoBecause scaling a monolith is not a realistic approach. Every single monolith I have worked on has been refactored as domain specific microservices, and in every case it was a resounding success.
- eric_h 10y agoIn my experience scaling a monolith just costs more (i.e. hosting costs). Our product, when we started, was quite expensive to run at our high traffic times, but we were eventually able to cut our costs drastically by breaking certain pieces out into services.
- gjolund 10y agoDepends on the product, but for many startups those additional costs can be crippling. Also, I have found it much easier to onboard a new engineer, give them the requirements for a service and let them go at it. I've been using AWS Lambdas to great effect in this way.
- eric_h 10y agoCertainly, not everything is a nail.
- collyw 10y ago"I've never implemented monolith properly, so you should avoid them."
- StabbyCutyou 10y agoI appreciate the feedback, but unfortunately I think you've made a bit of a leap in terms of what my point here was. It isn't that i'm saying "Don't build microservices", but rather "Don't adopt this approach until you understand the tradeoffs involved". I've worked on teams that have done it well, and not done it well. I've worked with large codebases that are well maintained, and poorly maintained. There are tradeoffs that need to be taken into consideration before adopting any major architectural approach. I will say that upon reflection, the original title could have been reworded a bit to better express this.