Tutorials System Design Tutorial
CAP Theorem — Complete Guide
CAP Theorem — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of System Design Tutorial on Toolliyo Academy.
On this page
System Design Tutorial · Lesson 5 of 100
CAP Theorem
Basics → Scale → Interview
Basics · 1 — Building blocks · ~6 min · Module 1: System Design Foundations
What is this?
CAP says under a network partition you cannot have both perfect Consistency and perfect Availability — you choose a bias (and Partition tolerance is assumed in distributed stores).
Why should you care?
ShopNest catalog reads can be slightly stale; wallet balances cannot. CAP language helps you pick the store and replication mode.
See it live — copy this example
Sketch the architecture on paper. These lessons focus on concepts and trade-offs.
Partition: Mumbai DC cannot talk to Delhi DC
Catalog (AP bias): both DCs keep serving product pages (may disagree briefly)
Wallet (CP bias): refuse writes until consensus — better wrong than inconsistent money
Run Example »
This lesson uses terminal or setup steps. Run commands on your computer — the live editor appears on coding lessons.
What happened?
- Availability bias keeps answering with possibly stale data.
- Consistency bias may reject requests during a split.
- Real systems soften this with timeouts and conflict rules.
Practice next
- Pick one ShopNest read that can be stale.
- Pick one write that must not be stale.
- Label each AP-ish or CP-ish.
- Argue for stale cart counts vs exact stock.
- Map Redis vs Postgres to CAP bias for one use case.
Remember
Partitions force trade-offs. Money leans consistent; feeds lean available. Match store to the data.
Catalog vs wallet
ShopNest serves catalog from multi-region cache; wallet is strongly consistent.
Outcome: Shopping continues in a blip; money stays correct.
Interview prep for this lesson
Practice these questions aloud after reading—each links to a full structured answer.
Sign in to ask a question or upvote helpful answers.
No questions yet — be the first to ask!