AnyLearn
All lessons

distributed-systems

11 lessons tagged distributed-systems: free, quiz-checked micro-lessons.

Programming
intermediate

Database Sharding and Replication

Go beyond a single database: learn how read replicas offload query load, how range and hash sharding partition data, why consistent hashing makes rebalancing tractable, and how to pick a shard key that avoids the celebrity problem and cross-shard pain.

8 steps·~12 min
Programming
intermediate

Scaling and Load Balancing

Master the mechanics of scaling distributed systems: when to scale up versus out, why statelessness is the prerequisite for horizontal scale, how L4 and L7 load balancers differ, which balancing algorithm fits which workload, and how to avoid turning your load balancer into the next single point of failure.

8 steps·~12 min
Programming
intermediate

Queues, Async, and Microservices

Learn how message queues and pub/sub decouple services, why at-least-once delivery demands idempotent consumers, how backpressure and dead-letter queues protect the system, and when microservices are worth the complexity — with a sequenceDiagram of async order processing.

8 steps·~12 min
Programming
intermediate

Caching Strategies

Understand where caches live, how cache-aside, read-through, write-through, and write-back differ, how to choose eviction policies, and how to prevent cache stampedes — with hit ratio math and a concrete cache-aside code snippet.

8 steps·~12 min
Programming
advanced

Replication and Partitioning

How do you scale a database beyond one machine while keeping it reliable? This lesson covers every major replication topology, the quorum math behind leaderless systems, and partitioning strategies from range keys to consistent hashing — including how to avoid hot partitions and handle rebalancing.

9 steps·~14 min
Programming
advanced

Failure and Time in Distributed Systems

Distributed systems break in ways single machines don't: nodes crash silently, messages vanish, and clocks lie. Learn the standard failure taxonomy, why a global clock is physically impossible, and how Lamport and vector clocks let you reason about causality without one.

8 steps·~12 min
Programming
advanced

Consensus: Raft and Paxos

Consensus is the hardest fundamental problem in distributed systems — and the one everything else depends on. Understand why FLP makes it theoretically impossible in async systems, how quorums work, and exactly how Raft solves leader election, log replication, and commitment safely.

8 steps·~12 min
Programming
advanced

CAP and Consistency Models

CAP is the most misquoted theorem in distributed systems. Get the precise statement, learn why PACELC is more useful in practice, and master the consistency spectrum from linearizability down to eventual consistency — with concrete trade-offs for each level.

7 steps·~11 min
Computer Science
intermediate

The CAP Theorem

Why every distributed system has to give up something when the network splits. CAP, the trade-offs in real databases, and the PACELC extension that's usually more useful in practice.

8 steps·~12 min
Computer Science
intermediate

Load Balancing

How load balancers spread traffic across servers, what L4 and L7 actually mean, the routing algorithms in real use, and the failure modes you need to design around.

8 steps·~12 min
Programming
intermediate

Apache Kafka: Distributed Event Streaming for Data-Intensive Applications

Dive into Apache Kafka, a powerful distributed streaming platform designed for high-throughput, fault-tolerant data pipelines. Understand its core components, architecture, and how it enables real-time data processing for modern applications.

12 steps·~18 min

Related topics