All Stories

Chapter08 - multi-master-replication

Design a Unique ID Generator in Distributed SystemsWe need to design a unique ID generator, compatible with distributed systems.

In tutorial, multi-master-replication, system design, Jan 21, 2025

Chapter07 - cap-theorem

Design a Key-Value StoreKey-value stores are a type of non-relational databases. Each unique identifier is stored as a key with a value associated to it. Keys must be unique and can...

In tutorial, cap-theorem, system design, Jan 21, 2025

Chapter06 - hash-ring

Design Consistent HashingFor horizontal scaling, it is important to distribute requests across servers efficiently.

In tutorial, hash-ring, system design, Jan 21, 2025

Chapter05 - server-side-rate-limiter

Design a Rate LimiterThe rate limiter’s purpose in a distributed system is to control the rate of traffic sent from clients to a given server.

In tutorial, server-side-rate-limiter, system design, Jan 21, 2025

Chapter04 - feed-publishing

A Framework for System Design InterviewsSystem design interviews are intimidating.

In tutorial, feed-publishing, system design, Jan 21, 2025

Chapter03 - latency-numbers-visu

Back-of-the-envelope EstimationYou are sometimes asked in a system design interview to estimate performance requirements or system capacity.

In tutorial, latency-numbers-visu, system design, Jan 21, 2025

Chapter02 - single-server-setup

Scale From Zero to Millions of UsersHere, we’re building a system that supports a few users & gradually scale it to support millions.

In tutorial, single-server-setup, system design, Jan 21, 2025