← Lessons

quiz vs the machine

Gold1430

System Design

Graceful Degradation Patterns

Shedding nonessential features so the core keeps serving under stress.

5 min read · core · beat Gold to climb

Partial service beats none

When a system is overloaded or a dependency fails, the worst outcome is a total outage. Graceful degradation is the practice of dropping nonessential work so the core experience survives. A shopping site that hides personalized recommendations but still lets people check out has degraded gracefully.

Common patterns

  • Fallbacks return a cached or default value when a dependency is down, such as last known prices.
  • Feature toggles let operators turn off heavy features like recommendations during a spike.
  • Load shedding rejects low priority requests early so high priority ones still complete.
  • Circuit breakers stop calling a failing dependency for a while so it can recover.

Designing the ladder

Decide ahead of time which features are essential and which are optional. Order the optional ones into a degradation ladder so the system can shed them one rung at a time as pressure grows, rather than collapsing all at once.

Key idea

Graceful degradation keeps the essential core alive by shedding optional features in a planned order under stress.

Check yourself

Answer to earn rating on the learn ladder.

1. What is the goal of graceful degradation?

2. What does a circuit breaker do during degradation?