8 ms·
Wait, who am I supposed to believe here?!? Prime Video tore down their micro services in favor of a monolith just last year! Which trillion dollar globocorp is
by eterpstra 3y ago
Wait, who am I supposed to believe here?!? Prime Video tore down their micro services in favor of a monolith just last year! Which trillion dollar globocorp is my tiny, insignificant company supposed to emulate?
https://thenewstack.io/return-of-the-monolith-amazon-dumps-microservices-for-video-monitoring/ https://thenewstack.io/return-of-the-monolith-amazon-dumps-m...
- redberryi 3y agoBe thankful. That madness is what feeding a lot of families. Yours maybe one of those.
- eterpstra 3y agoMine is definitely one of those.
- teitoklien 3y ago[flagged]
- Infinitesimus 3y agoRidiculed by whom? We've seen many competitors try to make a streaming service and beyond Apple, they all provide a laggy experience even in the menus. If you're going to emulate someone, it's not a bad idea to emulate who has the best results
- mtlmtlmtlmtl 3y agoEven Apple TV is pretty sluggish on my LG TV. And it sometimes makes my TV crash so I have to reboot it. It's maybe not as bad as the steaming pile of garbage that is Sky-Showtime, but it's got a ways to go before it's comparable to Netflix on my TV. Amazon Prime is pretty terrible on my TV too.
- dangus 3y agoThat’s your TV having a shitty processor and WebOS not being the best. Even expensive smart TVs don’t ship with good silicon. Get something like an Apple TV or Fire TV Cube and you’ll have a better experience. The Apple TV 4K in particular ships with a very powerful processor, it’s far snappier than any other streaming box I’ve tried.
- mtlmtlmtlmtl 3y agoYeah, no shit. Still, Netflix, Plex and Youtube work just fine, so Apple TV should be able to work at least as well. I'm not buying an extra device just to compensate for shitty software, that's silly. I prefer to unsubscribe.
- beeboobaa 3y ago> I'm not buying an extra device just to compensate for shitty software, that's silly Serious question: Then why did you buy an Apple TV? This is Apple's entire MO. You are expected to replace all your devices every year or two.
- cj 3y agoMaybe for their other product lines, but not the Apple TV. It’s infrequently updated and they easily last 5 years or more.
- alimbada 3y ago> This is Apple's entire MO. You are expected to replace all your devices every year or two. As someone who previously was an "anti-fan" of Apple's (we're talking 2000s, early 2010s) for their ridiculous prices (and that still stands for things like the Vision Pro), I've now seen the light (or gone to the dark side if you prefer) and now believe Apple provides better value for money than most of their competition due to the longevity of their devices. I know this is anecdotal and a sample size of one but I'd be curious to see data backing up your claim above.
- smokel 3y agoLaggy menus typically have little or nothing to do with microservice architectures.
- Solvency 3y agoAnd yet if you can't even implement a smooth scroll of 2D images over a backdrop in 2024, why would I listen to your opinion of microservices?
- deleted 3y ago[deleted]
- felixgallo 3y agoIncorrect. Frequently, UI lag on components that hit server side back services is made significantly worse by naïve microservices, especially in the face of organic growth. Specifically, every API call that traverses a machine, boundary, necessarily impart, additional latency, and uncontrolled microservices can have a multiplicative effect
- smokel 3y agoI agree that a bad implementation may lead to poor performance. However, this is irrespective of the architecture. The effects of an architecture are more noticeable in the context of maintainability, scalability, and extensibility. Or perhaps I am misunderstanding your comment?
- felixgallo 3y agoit's not actually irrespective of architecture. Some architectures are significantly more prone to certain kinds of problems than others. For example, monoliths can become so large as to make development, especially many-team development, inconvenient or impossible. In the specific case of microservices, the key benefit (multiple teams can develop and deliver in parallel without stepping on each other, separating concerns into their own ownership areas) has the tradeoff of distributed systems overhead, which can range from high latency (when a number of microservices are in a serialized hot path and the complexity is not being effectively managed) to lowered availability or consistency (when data is radiating through a network of microservices asynchronously and different services 'see' different data and make conflicting correct decisions). Monoliths see this set of performance problems much, much later in their lifecycle, because they have much better data locality and local function call characteristics.
- scarface_74 3y agoDisney owned streaming services and HBO Max are far from laggy thanks to BamTech. But as far as the menus being laggy. When you are trying to keep the bill of materials for streaming to less than $20 in the case of Roku, what do you expect? The AppleTV box is $140 and the difference in quality shows
- okdood64 3y agoIt's incredible how poor of an experience Apple TV Plus is on web browsers, even on Safari.
- dewey 3y agoPretty sure OP was sarcastic, lots of people blindly copy big corporation tech even if they don't have big corporation problems and scale.
- eterpstra 3y agoBullseye
- pas 3y agothe circumstances when microservices make sense are pretty well documented, but of course it's not widely known, especially because it doesn't fit into the 'microservices are future' slogan. https://www.infoq.com/presentations/microservices-netflix-industry/ https://www.infoq.com/presentations/microservices-netflix-in...
- Hnrobert42 3y agoMy problem with these two articles is neither provide sufficient detail to learn anything meaningful. Are there any good resources from trillion dollar globocorps that get down into the weeds?
- sgift 3y agoWell .. which one is better for your chances to get more money in the performance review?
- Traubenfuchs 3y agoI was highly commended for bringing up 6 new microservices a year ago during my performance review. Late during development I noticed that at least 2 of them were useless (they are essentially message routing gateways, I planned to "enrich" messages from inside, but ultimately never did). It was already done and I did not want to waste time to integrate those two services into the others so I left it as is and, well, my boss loved it.
- traspler 3y agoThey moved one of their use-cases back to a monolith, not their whole suite of applications/services.
- nonameiguess 3y agoThey're pretty clear here on what the benefits are. Microservices allow you to scale up and down individual system components without having to carry along the rest of a vertically scaled monolith for the ride. This makes for more efficient utilization of compute resources. For a company renting compute resources from the cloud, like Netflix, this can save a lot of money. What Amazon did, according to this needlessly snarky article that is not Amazon's tech blog, does not conflict with this. It's all theory. In reality, you should not be dogmatic and religious about your architecture choices, but empirical wherever possible. They measured utilization and cost and found they could do better in some cases with monolithic sub-systems. This doesn't mean all of Prime Video abandoned SOA.
- Solvency 3y agoHonestly, I get that it somehow became cool to ignore the grammatically correct "computation" and "computational resources" in favor of just grunting "compute" — why not go all the way? "efficient utility of compute resources", etc. Just shorthand everything. Does it take a famous developer to do it first for everyone to feel comfortable doing it?
- ndriscoll 3y ago> This makes for more efficient utilization of compute resources. No it doesn't. The rest of the monolith is just a chunk in your compiled binary sitting on disk, which is trivial in terms of resource cost. If that code is not running, it is not using any runtime resources. Microservices will, however, greatly increase resource requirements if they lead to additional serialization/deserialization, which is relatively expensive. If you're doing video encoding, this isn't such a big deal. For web services, it is likely to be the bulk of the resource cost. This is only exacerbated in modern infrastructures where services are more and more expected to use TLS to talk to each other.
- pookha 3y agoSwapping out silicon calls for network calls is the definition of complicated...And starting complicated because you want to achieve some premature optimization is insane. Monoliths are preferable for 90% of the use cases that you see in public or private industries.
- sbt567 3y agoIIRC, the rebuild to monolith doesn't tell the whole story. They aren't ditching all of their microservices in favor of monolith. There is a person responsible from Prime giving a clear picture of this in twitter (sadly I'm not saving the tweet source)
- tdb7893 3y agoIf you read the Prime Video blog post the takeaway is definitely not "always use a monolith". I haven't used Step Functions but they specifically mention step functions with a lot of state transitions (and the pricing model is per state transitions) and storing things in S3 and having to access things there all the time (which I've used S3 before and I was a bit shocked by since it seemed obvious to me that was gonna be really expensive). The takeaway for me was it's important to actually understand the tools that you're using. As an aside the Prime video article as a bit funny, at one point they have the line (which I hope is sarcastic but I fear that it isn't) "We experimented and took a bold decision: we decided to rearchitect our infrastructure" when their original design just obviously chose tools that didn't fit their workflow.
- pas 3y ago> The takeaway for me was it's important to actually understand the tools that you're using. no no no, that takes time, the hype train doesn't wait for anyone. the sacred monolith it is. all hail the Monolith! crush the microgerms, destroy the filthy tiny services.
- mk89 3y agoAnd just to add: that decision (to start with serverless for your POCs) came from above, CTO level. Needless to say, microservices are not serverless/step functions.
- iamflimflam1 3y agoIIRC The Prime Video guys were processing videos using AWS step functions - which probably makes sense if you are processing a few videos every so often. If you are processing videos continuously then it’s much more cost effective to just have some big boxes running 24x7 crunching through a queue of jobs.
- dboreham 3y ago> Which trillion dollar globocorp is my tiny, insignificant company supposed to emulate? None. They have a different set of problems than you.
- mhitza 3y agoI watch ThePrimagen (coding content creator on YouTube/Twich) from time to time, and he works as an engineer at Netflix. My impression seems to be that he doesn't like the container infrastructure, reflecting my own opinion, though he never calls out explicitly the infrastructure at Netflix as something bad. But every time he talks about work at Netflix, sounds about as complex as I'd image if I'd give the job to a CV driven engineer.
- jitl 3y agoNetflix is huge, has wide breadth of activities, needs to move terabytes of video around, and so has a lot of essential complexity.
- matthewmacleod 3y agoI mean you could just read a variety of different sources, look at the different trade-offs, and make informed decisions based on the compromises of both different architectural designs and your own products’ needs? Jesus the quality of conversation here is not good today.
- elwell 3y agoThe meta takeaway is that you shouldn't be afraid to resist trends (in either direction: monolith or microservices). If you're 'wrong' today, you may be 'right' in 5 years.
- hcarvalhoalves 3y ago"Micro service" and "Monolith" don't have precise definitions anyway. Ideally, there's only one right architecture: the one that's sufficient for the problem at hand, all things considered (latency, availability, cost, provider, maintenance, conceptual integrity, ...).
- wesselbindt 3y agoI feel like the term "microservice" is open to misinterpretation (people tend to focus on the micro part a bit much; I remember someone waxing poetic about something like a csv parsing service they had). But surely monolith is quite unambiguous: a system which is deployed as a whole. That is, you cannot deploy some part of the system on its own. You want to get changes in part X to prod? Better be prepared to deploy A through W and Y and Z as well. That feels fairly precise. But maybe some folks would disagree with this definition of a monolith.