Nah, there have been some blogs recently from engineers who were bucking the Microservice trend - Notably Amazon Prime Video moved back to more of a monolith deployment and saw performance improvement and infrastructure cost reduction
I mean, Prime Video is still a bunch of microservices, it comes down to where you define the boundary between 'service and ‘microservice’. That blogpost was specifically about “the Prime Video audio/video monitoring service”. Eg it’s a service/microservice for QA, not for all of Prime Video. I’m sure there are seperate services for billing, browsing, captioning, and streaming.
And although the author called it “moving from microservices to monolith” it’s more about moving from serverless to more traditional compute.
The Prime Video example was more like moving from nano-service insanity to sanity. They basically split EVERY POSSIBLE STEP into separate lambdas. They switched to still using microservices, but they do all transcoding steps for a single video on the same microservice instance (aka sanity).
They also make sense if you have heavily uneven traffic, either time-wise, service-wise, or both. Being able to scale up/down individual components is the point
People make microservices way too small sometimes. Then you have the opposite problem with people trying to cram everything into one system. You need to recognize when some functions are related and should go together, or when something has a weird dependency and should just be separate.
Wasn’t everyone here up in arms against micro services a week ago or so?
Just curious what everybody thinks.
I’ve been out for a bit, what’s wrong with them? Or is this being mixed up with microtransactions?
Nah, there have been some blogs recently from engineers who were bucking the Microservice trend - Notably Amazon Prime Video moved back to more of a monolith deployment and saw performance improvement and infrastructure cost reduction
https://www.linkedin.com/pulse/shift-back-monolithic-architecture-why-some-big-making-boudy-de-geer
I wouldn’t say anything is wrong with them, the pros and cons have been there, but the cons are starting to be more recognized by decision makers
I mean, Prime Video is still a bunch of microservices, it comes down to where you define the boundary between 'service and ‘microservice’. That blogpost was specifically about “the Prime Video audio/video monitoring service”. Eg it’s a service/microservice for QA, not for all of Prime Video. I’m sure there are seperate services for billing, browsing, captioning, and streaming.
And although the author called it “moving from microservices to monolith” it’s more about moving from serverless to more traditional compute.
Ahh, thanks for the info!
The Prime Video example was more like moving from nano-service insanity to sanity. They basically split EVERY POSSIBLE STEP into separate lambdas. They switched to still using microservices, but they do all transcoding steps for a single video on the same microservice instance (aka sanity).
They mainly make sense if you have insane amounts of traffic and/or are a giant company with a lot of independent teams.
For most companies using microservices, these are not true.
They also make sense if you have heavily uneven traffic, either time-wise, service-wise, or both. Being able to scale up/down individual components is the point
People make microservices way too small sometimes. Then you have the opposite problem with people trying to cram everything into one system. You need to recognize when some functions are related and should go together, or when something has a weird dependency and should just be separate.
@xilliah @dandelion afaik microservices are fine. Just like a monolith can be fine. Maybe it just depends what you are sick of working with. :D