6 ms·
While microservices might be helpful for scaling from a perf level, a lot of the situations where I've seen microservices apply is the organizational scale chal
by rdli 9y ago
While microservices might be helpful for scaling from a perf level, a lot of the situations where I've seen microservices apply is the organizational scale challenge.
How do you get lots of engineers to work on a single monolithic application, while releasing the app into production on a very frequent basis (e.g., daily)?
The traditional answer has been to add complexity into your workflow (e.g., feature freezes, staging environments, code reviews, more testing). These are all reasonable things and good ideas. But at some point your velocity starts to slow down dramatically because of all this complexity.
Worst of all, this complexity isn't necessary for every feature. You might be prototyping some stuff, for example. But a monolithic architecture forces everyone onto the same workflow.
Microservices enables different workflows for different features (services). The value of this, even when you're at a small scale, can be pretty significant.
- zmmmmm 9y agoThis is similar to why we are doing it ... our app is quite simple, with about 5 moving parts. But we need it to be able to keep running continuously while allowing each part to be upgraded independently, and to be able to shut off the valve of messages going to each part so we can upgrade it and test it without bringing other parts down. Several of the parts share data models and underlying code ... so perhaps they are not true "microservices" ... but to the extent they are, for us there are some useful aspects to the fad.