System design

Stage 1 · Lesson 3 of 10

Availability, redundancy and SLOs

Core concepts and building blocks

is the share of time a system does its job. It is usually quoted in nines: 99.9% allows about 43 minutes of downtime a month, and 99.99% about 4 minutes. When a request passes through several components in a row, their availabilities multiply.

Three services each at 99.9% give roughly 99.7% together. , spare copies running side by side, raises availability, as long as the copies do not fail together. To remove single points of failure, ask of every box on the diagram: what happens when this one dies?

Three terms describe the promise you make. An (service level indicator) is the measurement, such as the share of requests under 300 ms. An SLO (service level objective) is the target you commit to internally, such as 99.9% over 30 days. An SLA (service level agreement) is the contract, with penalties if you miss it.

Common trappromising five nines while depending on a single database.

A question to check yourself, an AI practice session and 3 cheat sheet entries come with the full roadmap. Unlock

Resources for this stage

Start with· follow one of these

  • CoursePaid
    Grokking System Design Fundamentals

    Design Gurus · Beginner · Subscription

    Load balancing, API gateway, proxies, caching, CAP and Bloom filters: week 1 of the plan in order

  • GitHub repoFree
    The System Design Primer

    Donne Martin · Intermediate

    Free: its scalability, latency, availability, CDN, load balancer and cache sections

Keep handy

  • Free Design Gurus concept index for looking up a term in the middle of a lesson

Also worth your time

Mark this stage as not done?