
How Netflix eliminated lock contention and scaled workflow execution by 10x after pivoting from OSS to internal innovation.
After stepping back from open-source maintenance, Netflix rebuilt Conductor from the ground up to power over 420 million monthly workflow executions. By decoupling task evaluation into an asynchronous architecture and partitioning datastore models, Netflix eliminated synchronous lock contention while cutting tail latency. This article offers a deep engineering dive into building hyper-scalable distributed orchestration layers.
Essential reading for backend and infrastructure engineers designing high-throughput orchestration engines or struggling with database locks in microservice architectures.
As Netflix Conductor scaled to process billions of quarterly executions, it encountered severe performance bottlenecks due to Dynomite in-memory store limitations, synchronous evaluation lock contention, and high memory pressure from monolithic workflow data structures.
Netflix modernized its data plane by migrating execution data to Cassandra and deploying Timestone for queuing, while introducing Conductor 4.0 with a partitioned task model and an asynchronous, queue-driven evaluation engine.
The system increased maximum task capacity per workflow tenfold from 2,500 to 30,000 tasks, reduced p99 workflow evaluation latency by approximately 40%, and dropped failed lock acquisition attempts to virtually zero.
Trade-off
Netflix discontinued the public open-source project (Conductor OSS) to focus internal resources, increasing operational reliance on specialized internal infrastructure components such as Timestone, Titus, and Stratum.
Netflix's high-throughput, low-latency priority queuing system built to replace DynoQueues. It provides built-in delayed queuing and background workflow repair capabilities.
A data architecture that decouples workflow metadata from individual task payloads. The evaluation engine loads only lightweight blueprints and active task records instead of the entire execution tree.
An architectural pattern that decouples execution triggers from inline processing by enqueuing updates into dedicated exclusive queues processed sequentially by background evaluators.




