Skip to content

Systems Design Fundamentals

  • Client-server architecture, request-response model
  • Networking basics: TCP/IP, UDP, HTTP/HTTPS, WebSockets, gRPC, protocol buffers
  • DNS: resolution, caching, load balancing via DNS
  • Proxies: forward proxy, reverse proxy (Nginx, HAProxy), API gateways
  • Load balancing: round robin, least connections, consistent hashing, L4 vs L7
  • Caching: cache-aside, write-through, write-back, eviction policies (LRU, LFU, TTL), CDNs
  • Databases: SQL vs NoSQL, ACID, CAP theorem, sharding, replication (leader-follower, multi-leader)
  • Message queues: Kafka, RabbitMQ, pub/sub, event-driven architecture, exactly-once delivery
  • Consistency models: strong, eventual, causal, read-your-writes
  • Rate limiting, circuit breakers, backpressure