Skip to content

Component catalog

Every box you can drop on the canvas of the System Design Playground has an entry in this catalog: what it is, when to use it and when not to, key numbers, failure modes, how it behaves in the playground, real products on AWS, GCP, Azure and in open source, and a one-liner you can say in the interview. The simulator's "learn more" links land on these entries.

The palette has 49 components in 10 categories. They follow a request from left to right: a client reaches the edge, the edge forwards to compute, compute is packaged and scaled in containers (on a Kubernetes cluster), compute reads and writes storage and publishes to messaging, everything is watched by observability, laid out inside a network, and some requests go to AI components or to external providers.

flowchart LR
    CL[Client] --> ED[Traffic & Edge]
    ED --> CO[Compute]
    CO --> ST[Storage]
    CO --> MS[Messaging]
    CT[Containers: microservices, Kubernetes] -.runs.-> CO
    MS --> CO
    CO --> AI[AI & Agents]
    CO --> EX[External]
    OB[Observability] -.watches.-> ED
    OB -.watches.-> CO
    OB -.watches.-> ST
    NW[Network: VPC, subnets, NAT, VPN, mesh] -.contains.-> CO

Categories

Category What it answers Components Main classes
Client Who sends the traffic, and how? 2 Intro, Edge › Protocols
Traffic & Edge How does a request find us and get in safely? 6 Edge
Compute Where does the code run, and how does it scale? 8 Compute
Containers How do we package, deploy and scale independent services? 4 Cloud-native, Compute › Services
Storage Where does the data live, and how fast can we read it? 7 Databases, Caching
Messaging How do services talk without waiting for each other? 4 Messaging
Observability How do we know what is happening? 5 Observability
Network Who can talk to whom? 5 Network & security
AI & Agents How do we put an LLM in production safely? 5 AI systems
External How do we depend on services we don't run? 3 Compute › Integrations

All components

Id Component Category In one line
client Client Client A browser or program that sends requests; generates the load
mobile Mobile Client A mobile app: flaky networks, offline use, slow updates
dns DNS Traffic & Edge Names to IP addresses; geo, weighted and failover routing
cdn CDN Traffic & Edge Caches content near users; offloads the origin
lb Load Balancer Traffic & Edge Spreads requests over healthy replicas (L4/L7)
waf WAF Traffic & Edge Filters malicious HTTP traffic and bots
apigw API Gateway Traffic & Edge Front door of the API: auth, rate limiting, routing
ingress Ingress Traffic & Edge Routes external HTTP traffic into a Kubernetes cluster
app App Server Compute Stateless service replicas that run the business logic
worker Worker Compute Background processes that drain queues
serverless Serverless Compute Functions that scale per request, with cold starts and limits
auth Auth Service Compute Authenticates users and issues tokens (OIDC/JWT)
search Search Compute Full-text and faceted search over an inverted index
scheduler Scheduler Compute Runs jobs on a schedule (cron) exactly when they should
notifications Notifications Compute Sends email, push and SMS through providers, asynchronously
analytics Analytics Compute Collects and aggregates events for reports and dashboards
microservice Microservice Containers One bounded context, deployed and scaled independently, with its own database
container Container Containers A process packaged in an image; CPU limit and start-up time set its capacity
k8s Kubernetes Cluster Containers Worker nodes that run services as pods; Pending pods, node failures, cluster autoscaler
registry Service Registry Containers Service discovery: callers find healthy replicas and drop dead ones in seconds
sql SQL Database Storage Relational data with transactions; the source of truth
dbcluster DB Cluster Storage Replicated, optionally sharded database with automatic failover
nosql NoSQL DB Storage Key-value, document or wide-column stores that partition horizontally
cache Cache Storage In-memory copies of hot data (Redis); cuts latency and DB load
objstore Object Store Storage Cheap, durable storage for files and media (S3-like)
dwh Data Warehouse Storage Columnar store for analytical queries over history
vectordb Vector DB Storage Nearest-neighbor search over embeddings (RAG)
queue Message Queue Messaging Each message to one consumer; absorbs spikes
pubsub Pub/Sub Messaging Each message to every subscriber; fan-out
stream Event Stream Messaging Ordered, retained, partitioned log of events
kafka Kafka Messaging The reference event-streaming platform: topics, partitions, consumer groups
metrics Metrics Observability Numeric time series: RED, USE, SLIs
logs Logs Observability Structured records of events, linked by trace id
tracing Tracing Observability One request across services, as a waterfall of spans
alerting Alerting Observability Pages humans on SLO burn, not on CPU
healthcheck Health Check Observability Liveness and readiness probes for LBs and orchestrators
vpc VPC Network Your private, isolated network in a region
subnet Subnet Network Public or private slice of a VPC in one zone
nat NAT Gateway Network Outbound internet for private services
vpn VPN Network Encrypted tunnel between networks
mesh Service Mesh Network mTLS, retries, timeouts and telemetry between services
llmgw LLM Gateway AI & Agents One front door to model providers: routing, fallbacks, budgets, caching
orchestrator Orchestrator AI & Agents Runs the agent loop of model and tool calls
toolreg Tool Registry AI & Agents Catalog of tools the model may call (MCP), with permissions
memory Memory Fabric AI & Agents Retrieval (RAG) and conversation memory
safety Safety Mesh AI & Agents Guardrails on inputs, outputs and tool calls
thirdparty 3rd Party API External Someone else's API: slow, rate-limited, sometimes down
payment Payment External Payment provider: idempotency, webhooks, reconciliation
email Email External Email delivery provider, always behind a queue

How to read an entry

Use the catalog three ways

  • While designing in the playground: click a node, then "learn more" to see its parameters and failure modes.
  • Before an interview: read only the In the interview box of each component, out loud; then the quick reference.
  • While studying a class: each entry links back to the class pages and to the scenarios where the component matters.

Numbers in the catalog are either well-known published values (with the source named) or clearly marked ≈ illustrative — orders of magnitude to reason with, not benchmarks. Prices are approximate list prices from 2026: always check the providers' calculators. For the full set of numbers, see the numbers cheat sheet; for definitions, the glossary.