Fault tolerance
0-day streakReview

Your progress

Level 1

0 XP100 XP to level 2
0day streak
0best streak
0topics started
0cards reviewed
    Review cards

    Progress is stored only in this browser. No account is required.

    Layer 3 · Go deeper · 9 min

    Go deeper

    Size it, build it, then make the calls an interviewer will push you on.

    Back of the envelope

    Size it up

    Tap through each step of the arithmetic.

    One of 4 core switches quietly drops packets. How many requests does it slow?

      How many blocks does a 6-block file take, and how many losses survive?

        Store 10 million objects at eleven nines. How often do you lose one?

          Build-up · 5 steps

          Follow one fault across two services

          A payments service sends amounts to a ledger. Watch one dormant bug become a failure a user sees, then find three places to stop it.

          Step 1 of 5

          A dormant fault

          A fault is a cause, like a bug, a worn disk or a bad config value. This rounding bug sleeps in the payments service until its triggering input arrives.

          4 interview moments

          You’re the candidate

          The interviewer pushes on the hard parts. Pick an approach and see how it holds up.

          1. Deep dive 1 of 4

            Interviewer

            “You run every machine in your own data centres. Which fault model do you design the three-replica ledger for?”

            Your move. Pick an approach:

          2. Deep dive 2 of 4

            Interviewer

            “One back-end runs ten times slower than its peers, yet passes its health check. What do you do?”

            Your move. Pick an approach:

          3. Deep dive 3 of 4

            Interviewer

            “Your photo store keeps three replicas of every photo, and storage is now the biggest bill. What do you change?”

            Your move. Pick an approach:

          4. Deep dive 4 of 4

            Interviewer

            “A bank’s API takes 8 seconds while its health check stays green. Your 2-second timeout fires mid-debit. What now?”

            Your move. Pick an approach:

          Build-up · 5 steps

          Watch retries keep an outage alive

          An illustrative seat-availability service in a tatkal rush. Its database handles 2,000 queries a second; the app gives each query 500 ms and retries once.

          Step 1 of 5

          Stable: retries still fit

          Below 1,000 requests a second, even if every query is retried, the load stays under 2,000. A stable system recovers from any trigger.