The basics of system design in short chapters. Start with scaling, end with AI systems. Read them in order or jump to the one you need.
The difference between fast and able to grow, and how to make a system handle more users.
The CAP theorem, what happens when a server dies, and how copies of data stay in step.
How a name like sdprimer.com turns into a server address, and how CDNs put files closer to users.
How to spread traffic across many servers, Layer 4 versus Layer 7, and what a reverse proxy does.
SQL versus NoSQL, ACID versus BASE, and how to split a database when it gets too big.
Where to keep a copy of hot data, when to throw it out, and how to keep it correct.
Queues, background jobs, and how to stop making users wait for slow work.
HTTP, TCP, UDP, REST, and RPC. How services talk to each other and which to pick.
Encryption, checking input, giving each part only the access it needs, and layers of defense.
A system with a language model inside: the request path, time to first token, GPU capacity, token cost, RAG, agents, and evals.
Answer one question a day on this site. The first one takes two minutes.
Try a question