Learning paths
Follow a recommended sequence through system design decisions. Open any guide along the way.
Explain when to introduce asynchronous processing, how to bound it, and how to retry and recover work safely.
Recommended order 4 guides
When to add a queue
Start with the decision to move work out of the request path.
Backpressure and capacity
Then bound the backlog and relate accepted load to useful processing capacity.
Idempotency and retries
Keep retries and replay from creating extra saved results.
Processing slots, threads, and concurrency
Make the concurrency and execution capacity behind those limits concrete.
Turn access patterns into a data model, efficient reads, and explicit transaction and write boundaries.
Recommended order 5 guides
Choosing a data model
Start with required reads, writes, identities, and consistency guarantees.
Indexes and write cost
Choose indexes for those reads and account for their write cost.
Cursor pagination
Page efficiently through large results using a stable ordering.
Transaction boundaries
Define which related changes must succeed or fail together.
Bulk database writes
Group writes without losing the transaction and retry boundaries.