← System Design learning path
System Design · Module 8 of 10

Reliability and availability

Keep systems running when parts fail.

📖 Key ideas

  1. Redundancy: multiple instances across zones/regions.
  2. Failover switches to backups automatically.
  3. Timeouts, retries with backoff, circuit breakers.
  4. Rate limiting and graceful degradation protect core features.
  5. Backups and disaster recovery plans (RTO/RPO).
💡 Real-life example: Reliability is a hospital's backup generator: when power fails, critical machines keep running.
RedundancyDuplicate components for backup
FailoverSwitching to a standby
Circuit breakerStops calling failing services
Graceful degradationReduced functionality instead of total failure