Resilience
ELI5 - The Vibe Check
Resilience is your system's ability to get punched in the face by a dependency going down, a traffic spike, or a bad deploy, and keep serving users anyway, maybe a little worse, but not dead. It's the difference between the database being slow so checkout is degraded, and the database being slow so the entire site is a blank white page.
Real Talk
Resilience is a system's capacity to continue operating, in a degraded but functional state if necessary, in the presence of failures, faults, or unexpected load. It is achieved through patterns such as circuit breakers, retries with backoff, bulkheads, and graceful degradation, and is validated in practice through techniques like chaos engineering rather than assumed from design alone.
When You'll Hear This
"The recommendation service died but the site stayed resilient, checkout just fell back to the cached list." / "We test resilience with chaos engineering now instead of hoping it works."
Related Terms
Chaos Engineering
Imagine stress-testing a bridge by parking trucks on it before opening day instead of hoping it holds.
Circuit Breaker
Circuit Breaker is like the electrical circuit breaker in your house.
Fault Tolerance
Fault tolerance is designing a system that assumes parts of it will break, so it plans for that instead of hoping it doesn't happen.
Graceful Degradation
Graceful degradation is building the fancy version first, then making sure it doesn't completely break in older or limited environments.
High Availability
High availability means your system keeps running even when a piece of it inevitably fails, because in production, something is always failing somewhere.