/plushcap/analysis/buildbuddy/buildbuddy-distributed-scheduling-for-faster-builds

Distributed Scheduling for Faster Builds

What's this blog post about?

BuildBuddy is a UI, distributed cache, and remote execution platform for Bazel builds that helps securely compile code, cache artifacts, and visualize results. One of the challenges it faces is scheduling remote executions, which involves matching actions received by its API to remote workers. In the early days, BuildBuddy used a load balancer, but this resulted in uneven task distribution and longer build times. The company then implemented Sparrow, a distributed scheduling algorithm that uses the power of two choices and late-binding to improve maximum load and resilience. This solution has been successful for BuildBuddy and is still used in production today.

Company
BuildBuddy

Date published
April 7, 2022

Author(s)
Tyler Williams

Word count
1225

Language
English

Hacker News points
None found.


By Matt Makai. 2021-2024.