Planning To Fail
summary
Builds resilience by breaking things: runs around ten backend services on a couple hundred EC2 instances, sees ~30% month growth and ~1 request every 5 seconds per region, and replaces MySQL with Cassandra across three continents plus Zookeeper for coordination, ElasticSearch for search, NSQ for messaging and a CR_flake ID service. Automates fault injection with JMeter, iptables experiments and Graphite assertions, runs automated nightly failure tests, uncovers a memcache client timeout bug and fixes it so degraded paths work reliably.
AI-written summary · about
chapters (4)
related talks
32mBuilding for Gracious Failure
40mThe Art of Embracing Failure at Scale
54mAdrian’s Greatest Hits, B-Sides & Re-issues
52mThree years of breaking things to make them better
28mDesigning for Failure: How to Manage Thousands of Hosts Through Automation
42mChaos Engineering: Why Breaking Things Should be Practiced
27mTesting Before You Scale & Making Friends While You Do It
39mResilience & Chaos Engineering in the Cloud
