Remote execution, the DIY edition
summary
Stripe runs 80 million actions weekly across ~65,000 vCPUs and replaces gVisor with Firecracker to regain near‑native filesystem speed; content uses S3/DynamoDB and artifactory‑backed remote downloader with checksum validation. LVM snapshots attach input trees in a few hundred ms, SquashFS images cut node_modules to one file and give ~10% faster builds and ~50% memory drop, action merging saves ~20% executor load, and get_tree caching + parallel walk yields 20x latency improvement to ~500ms.
AI-written summary · about
chapters (17)
- 0:00Remote execution intro
- 1:49Bazel at Stripe
- 3:13Security challenges
- 5:18Firecracker sandboxing
- 6:42Controlled internet access
- 8:10Cache tags for isolation
- 9:34Time-traveling tests
- 11:21Asset API for downloads
- 13:07Tracing for debugging
- 15:35Action merging
- 17:40Hedging flaky tests
- 18:43Large input roots
- 20:50LVM snapshots
- 21:54Optimizing get tree RPC
- 22:55SquashFS for directories
- 25:01Trade-offs and future
- 26:03Q&A
