Skip to contentSkip to content

Part 2 — Building Blocks

The atomic components. Every large-scale system is assembled from these primitives.

Prerequisites: Part 1 — Fundamentals (especially Ch01-Ch03)


Overview

Part 2 covers the core infrastructure components that appear in almost every distributed system. You'll understand how each works internally, when to use it, and the trade-offs at every decision point.

By the end of Part 2, you'll be able to:

  • Explain DNS resolution and routing strategies
  • Choose the right load balancing algorithm for your use case
  • Design multi-layer caching strategies
  • Select between SQL and NoSQL databases with clear reasoning
  • Design async processing pipelines with message queues

Chapters

Chapter 05 — DNS

How DNS works, record types, routing strategies (round-robin, weighted, latency-based, geolocation), DNS as load balancer.

Chapter 06 — Load Balancing

L4 vs L7, algorithms (round-robin, least connections, consistent hashing), active-passive vs active-active failover, reverse proxy.

Chapter 07 — Caching

Cache hierarchy, strategies (cache-aside, read-through, write-through, write-behind), eviction policies, Redis vs Memcached.

Chapter 08 — Content Delivery Networks

How CDNs work, push vs pull models, origin shielding, TTL management, multi-CDN strategies.

Chapter 09 — Databases: SQL

Replication (master-slave, master-master), sharding, federation, denormalization, SQL tuning.

Chapter 10 — Databases: NoSQL

Key-value, document, wide-column, graph databases. When to use each, CAP trade-offs in practice.

Chapter 11 — Message Queues

Kafka, RabbitMQ, SQS. Task queues, back pressure, exactly-once delivery, async processing patterns.

Chapter 12 — Communication Protocols

HTTP, TCP/UDP, RPC, REST, GraphQL, WebSockets. When to use each protocol.


Time Estimate

~8 hours of focused reading and practice.

Comments powered by Giscus. Enable GitHub Discussions on the repo to activate.

Built with VitePress + Dracula Theme