System design

Stage 1 · Lesson 6 of 10

Reverse proxies and API gateways

Core concepts and building blocks

A sits in front of your servers and handles requests on their behalf. It can terminate TLS (decrypt secure traffic), compress responses, cache static files and deal with slow clients so your servers do not wait on them. It also hides how your servers are laid out inside.

Nginx, Envoy and are common examples, and most are reverse proxies too. An API gateway is a reverse proxy with API jobs added. These include checking who the caller is (), each client, sending each request to the right backend service, and sometimes combining several responses into one. Put this shared work there so every service does not rebuild it.

Common trapletting the gateway grow business logic, at which point it becomes a shared monolith every team must change and deploy, and a bottleneck that needs its own scaling and redundancy.

A question to check yourself, an AI practice session and 2 cheat sheet entries come with the full roadmap. Unlock

Resources for this stage

Start with· follow one of these

  • CoursePaid
    Grokking System Design Fundamentals

    Design Gurus · Beginner · Subscription

    Load balancing, API gateway, proxies, caching, CAP and Bloom filters: week 1 of the plan in order

  • GitHub repoFree
    The System Design Primer

    Donne Martin · Intermediate

    Free: its scalability, latency, availability, CDN, load balancer and cache sections

Keep handy

  • Free Design Gurus concept index for looking up a term in the middle of a lesson

Also worth your time

Mark this stage as not done?