๐Distributed Systems
In distributed systems, networks are asynchronous, packet loss is normal, and clocks drift. This volume establishes the mental models from node replication and quorum to fault isolation.
Foundational Invariants & Core Principles:
Foundations & Network Communication
Fallacies of distributed computing, packet transport, reverse proxying, and client/edge caching layers.
TCP/IP & Linux Socket Networking Internals
TCP delivers an in-order, guaranteed byte stream across unreliable packet-switched IP networks. The Linux kernel manages this via send/receive socket buffers (SO_SNDBUF/SO_RCVBUF), sliding-window flow control to protect receivers from saturation, and congestion algorithms (CUBIC/BBR) to regulate transmission across shared bottlenecks.
Reverse Proxy Patterns & Edge Load Balancing
A reverse proxy acts as an intermediary gateway positioned between external clients and private backend services. It terminates client TLS handshakes, multiplexes requests across persistent upstream connection pools, distributes traffic via balancing algorithms (Round Robin, Least Connections, P2C), and guards internal services against direct internet exposure.
In-Memory Caching & Event Loop Architecture
Caching stores high-frequency read data in fast RAM instead of slow disk/network databases. Redis achieves sub-millisecond QPS by operating a single-threaded event loop paired with OS epoll I/O multiplexing, completely eliminating thread locking contention.
CDN Architecture & Geo-Distributed Edge Caching
A Content Delivery Network (CDN) is a globally distributed network of Points of Presence (PoPs) that terminates client TCP/TLS connections physically close to users via BGP Anycast routing. By serving cached static assets and API responses from the network edge, CDNs reduce origin server load by 80-95% and drop round-trip times from hundreds of milliseconds to under 15ms.
Data Partitioning & Hash Distribution
Horizontal scalability, consistent hashing rings, and range/hash database sharding strategies.
Consistent Hashing
Consistent Hashing is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Database Sharding & Range Partitioning
Sharding splits a monolithic database into independent database nodes (shards). Each row is routed to a shard based on a shard key.
Replication, Quorum & Consistency Models
Quorum read/write mechanics, PACELC/CAP invariants, anti-entropy repair, and hinted handoff.
Quorum Consistency & Raft Consensus
Distributed databases replicate data across N nodes for fault tolerance. Quorum math (Read Nodes + Write Nodes > Total Nodes) guarantees that any read operation overlaps with at least one node containing the latest write.
CAP Theorem & Consistency Models
During a network partition, a distributed store cannot simultaneously provide both strong consistency and full availability; engineering chooses which guarantee to weaken and how clients observe stale reads.
Quorum Read/Write Tuning
Quorum Read/Write Tuning is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Read Repair & Anti-Entropy
Read Repair & Anti-Entropy is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Hinted Handoff & Repair
Hinted Handoff & Repair is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Consensus, Coordination & Distributed Transactions
Leader election, replicated log sequencing, split-brain protection, atomic commit protocols, and distributed locks.
Leader Election Patterns
Leader Election Patterns is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Gossip & Membership Protocols
Gossip & Membership Protocols is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Replicated Logs & Sequencing
Replicated Logs & Sequencing is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Split-Brain Prevention
Split-Brain Prevention is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Two-Phase Commit
Two-Phase Commit is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Distributed ACID Transactions & Optimistic Locking
Distributed ACID Transactions & Optimistic Locking provides core foundational patterns in Distributed Systems & Storage. Evaluate ACID vs BASE guarantees, Compare-and-Swap optimistic concurrency control, and distributed locking mechanisms.
Distributed Locking & Redlock Algorithm
Distributed Locking & Redlock Algorithm provides core foundational patterns in Security & Distributed Concurrency. Synchronize atomic operations across distributed nodes using Redis SETNX, TTL fencing tokens, and Redlock consensus.
CRDTs & Conflict-Free Replicated Data
CRDTs & Conflict-Free Replicated Data is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Asynchronous Messaging & Stream Processing
Decoupled message buffers, dead letter queues, poison message triage, and streaming watermarks.
Message Queues & DLQ Backpressure
Message queues decouple producers from consumers, holding job tasks in RAM/disk until worker pools process them.
Dead Letter Queues
Dead Letter Queues is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Poison Message Handling
Poison Message Handling is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Stream Watermarks & Late Data
Stream Watermarks & Late Data is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Backpressure & Flow Control
Backpressure & Flow Control is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Global High-Availability, Disaster Recovery & Observability
Multi-region active-active architectures, cross-region failover, distributed cron, and end-to-end tracing.
Multi-Region Active-Active
Multi-Region Active-Active is a foundational topic in System Architecture & Design. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Multi-Region Disaster Recovery
Multi-Region Disaster Recovery is a foundational topic in System Architecture & Design. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Distributed Cron & Scheduling
Distributed Cron & Scheduling is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Distributed Tracing
Distributed Tracing is a foundational topic in Distributed Systems & Storage. Engineers use it to make predictable trade-offs under load, failure, and evolving requirements.
Explore Other Domain Curriculums
Software Architecture
Decoupled event streaming, microservice resilience, CQRS, and domain-driven design.
Design Patterns
GoF structural/behavioral patterns, circuit breakers, sagas, and transactional outbox patterns.
Software Engineering
Clean code craft, automated testing pyramids, CI/CD pipelines, refactoring, and technical debt.
Algorithms & Data Structures
B-Trees vs LSM-Trees, graph traversal, consistent hashing rings, and asymptotic time-space trade-offs.
