41 comments

[ 2.7 ms ] story [ 95.5 ms ] thread
This appears to be the high level architecture: https://miro.medium.com/v2/resize:fit:4800/format:webp/0*SDt....

To me seems to overengineered for most of the companies outside there, how many people do you need to manage it?

In the blog, it claims:

> … schedule hundreds of thousands of workflows, millions of jobs every day and operate with a strict SLO of less than 1 minute of scheduler introduced delay even when there are spikes in the traffic.

I wouldn’t necessarily call it over engineered if it can handle this type of workload.

But if you are running a fraction of these workloads with a much more relaxed SLO (service level objection), then yea this is overengineered.

Like any solution from FAANG, or “big tech”. It works for _them_ at scale but for 90% of companies the sheer management of this service will quickly outweigh the benefits.

Over-engineering is in the eye of the beholder
> Like any solution from FAANG, or “big tech”. It works for _them_ at scale but for 90% of companies the sheer management of this service will quickly outweigh the benefits.

In other words, learn it now and get it on your resume, because within a year every 200-hit-per-day service and site is going to rearchitected to use it.

That chart has real Krazam Microservices vibes to it.
All time great Youtube video. Still heavily relevant today.
Here's a video of Primeagen, a YouTuber who uses to be a dev at Netflix, watching that video and then telling a very similar story that happened at Netflix: https://youtu.be/s-vJcOfrvi0
Brilliant. Currently dealing with webs of microservices myself. It's truly wild to watch something akin to the cambrian explosion with these things.
this looks like someone took their systems design interview too seriously
I was hoping to try this out, but it doesn't build on my mac :/

Here's their tech blog post about it: https://netflixtechblog.com/orchestrating-data-ml-workflows-...

[flagged]
Not sure about the others but java is just an issue, if the devs did not care about cross platform and is mostly easy to fix if native libraries are absent.
It doesn't build on windows either. It looks to be missing some dependency.

       > Did not resolve 'com.github.vmg.protogen:protogen-annotations:1.0.0' which is part of the dependency lock state
I get a similar error
I couldn’t find that package on Maven Central either. Though its source is on GitHub.
Use podman desktop, or is it an Arm issue?
I've been able to build and run it sucessfully via IntelliJ, on an M2 Air.

Takes a few mins to get all the dependencies and build, but it definitely works.

Perhaps you're missing some dependency steps before hand if you're hand cranking gradle.

I was just thinking didn't Netflix already have its own workflow engine: https://github.com/Netflix/conductor, but found out it's archived/EOL so this makes more sense now.
(comment deleted)
(comment deleted)
After almost demise of nomad, market needs another general purpose orchestrator that isn't Kubernetes or docker swarm.

This is not it however.

So, is this something like prefect, dagster, flyte..?
How could you forget airflow?
Lots of drinking and therapy.
this comment needs to be at the top
Interesting that they use CockroachDB.
1) Scheduling seems to be primitive? (strategy: sequential) 2) That's seems to be just a DAG executor? No high-level frontend? 3) No executiun context? 4) No typings? 5) No concept of a stream?

It would be way too ambitious to call this thing an orchestrator, it seems to be just a primitive distributed DAG executor.

Did you miss the sections on how this allows cyclic graphs and not just DAG?

It's hard to take your comment seriously when this was one of the earliest talking points.

> In Maestro, a workflow is a DAG (Directed acyclic graph) of individual units of job definition called Steps.
The link was changed at some point, from the original Medium article:

> Unlike traditional workflow orchestrators that only support Directed Acyclic Graphs (DAGs), Maestro supports both acyclic and cyclic workflows and also includes multiple reusable patterns, including foreach loops, subworkflow, and conditional branch, etc.

https://netflixtechblog.com/maestro-netflixs-workflow-orches...

(comment deleted)
(comment deleted)