5 ms·
In my experience, microservices are incompatible with the universe. All things are connected, sometimes in unforeseen ways. Almost inevitably, some app or fron
by fleddr 4y ago
In my experience, microservices are incompatible with the universe. All things are connected, sometimes in unforeseen ways.
Almost inevitably, some app or front-end is going to need a joined result from multiple services. If these services are "best practice" independent, they likely have their own data store.You can now bolt on some new architectural layer on top, thereby introducing a new point of failure. Or, you can let the front-end do sequential calls and do the join.
This is how you go from a traditional query in a single data store with a response time of 50ms to the modern equivalent taking multiple seconds. Not just due to the join, also due to the network, auth calls, and other overhead.
But hey, at least the microservice teams can operate and deploy independently. Which is a problem instead of a feature. Services require constant (unforeseen) changes from upstream demand whom now have to negotiate/wait for this "independent" team to be able to deliver.
Everything becomes slower and more difficult: planning, implementing, testing, debugging.
I'm not an absolutionist, I believe there are use cases for micro services but my main point is that reality is not as modular as you arbitrarily have modeled it.