Component explorer
The vocabulary of system design. 19 components, each with a comprehensive why/how/when/failure/alternatives story.
Take the deep tutorial
Every component in one long page, in a suggested reading order — beginner to production in a single tutorial.
Load Balancer
Distributes incoming traffic across a pool of servers for scale and fault tolerance.
OpenAPI Gateway
Single entry point that handles auth, rate limiting, routing, and protocol translation for downstream services.
OpenCDN (Content Delivery Network)
A globally distributed cache that serves static and cacheable dynamic content close to the user.
OpenRedis
An in-memory key-value store used for caching, pub/sub, rate limiting, distributed locks, and simple queues.
OpenSQL Database
A row-oriented, ACID-compliant relational database — the default for transactional workloads.
OpenMySQL
The world's most-deployed open-source relational database — clustered PK index, InnoDB MVCC, Vitess for sharding at billions-of-rows scale.
OpenPostgreSQL
The extensible, standards-compliant relational database — MVCC via xmin/xmax, richest type system in SQL, extensions from PostGIS to pgvector.
OpenNoSQL Database
Umbrella for document, wide-column, and key-value stores optimized for horizontal scale over strict schema.
OpenKafka
A distributed, partitioned, replicated commit log for event streaming, high-throughput ingest, and decoupled services.
OpenMessage Queue
Async task queue that decouples producers from consumers and smooths bursts. Each message is processed exactly once (per-message ACK model).
OpenObject Storage (S3, GCS, Azure Blob)
Durable, cheap, flat-namespace storage for blobs — images, videos, backups, logs, and any large binary object.
OpenSearch Engine (Elasticsearch, OpenSearch, Meilisearch)
Inverted-index-based full-text and structured search — the right tool for 'find me records matching this query' when SQL LIKE isn't fast enough.
OpenStream Processor (Flink, Kafka Streams, Spark Structured Streaming)
Continuous computation over event streams — windowed aggregations, joins, ML features, and event-driven derived views.
OpenRate Limiter
Enforces per-caller (per-user, per-IP, per-tenant) request budgets to protect downstream systems from abuse and overload.
OpenScheduler (cron, Airflow, Temporal timers)
Runs jobs at a time or interval — the simplest form of eventual asynchronous computation.
OpenWorkflow Engine (Temporal, Cadence, AWS Step Functions)
Orchestrates long-running, stateful multi-step processes — the right tool when a business flow involves many services and can span days.
OpenDistributed Lock (ZooKeeper, etcd, Redis Redlock)
Cross-node mutual exclusion — 'only one node can do this at a time' when you can't rely on a single-node lock.
OpenService Discovery (Consul, etcd, DNS-based)
How services find each other in a dynamic fleet — because IPs change, nodes come and go, and hardcoding is a losing game.
OpenDistributed Database (DynamoDB, Cassandra, Spanner)
Horizontally-scaled database with automatic partitioning and replication — the answer when one node can't hold the data or the traffic.
Open