Learning paths

Follow a recommended sequence through system design decisions. Open any guide along the way.

Browse all resources

Explain when to introduce asynchronous processing, how to bound it, and how to retry and recover work safely.

Recommended order 4 guides

  1. When to add a queue

    Start with the decision to move work out of the request path.

  2. Backpressure and capacity

    Then bound the backlog and relate accepted load to useful processing capacity.

  3. Idempotency and retries

    Keep retries and replay from creating extra saved results.

  4. 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