System Design Cases
Distributed Message Queue (Kafka-style)
Distributed Message Queue (Kafka-style) case study. Producers (idempotent + transactional) write batched/compressed records to a 3-broker cluster (DC-1) with RF=3 and min.insync.replicas=2. Three partitions (P0/P1/P2) each have a leader and 2 followers spread across racks. Control plane is KRaft metadata quorum (no ZooKeeper) with 3 voters, plus group coordinator and transaction coordinator. Two consumer groups: analytics (auto.commit=false, 1:1 partition assignment) and alerting (read_committed for EOS). Internal compacted topics: __consumer_offsets, __transaction_state, __cluster_metadata. Multi-DC mirror via MirrorMaker 2 to DC-2, with tiered storage (S3) for cold segments. Two ADR panels: pull vs push consumer model, KRaft vs ZooKeeper metadata. Six animated scenarios: produce + ISR replicate (acks=all), consumer group fetch + offset commit (zero-copy sendfile), leader broker failure + ISR election (KRaft fast failover), replay from offset (retention + tiered recovery), exactly-once via transactional producer (PID/epoch fence + 2PC commit markers + read_committed), and ADR walkthrough.
Премиум-урок
Премиум-урок заблокирован
Этот практический урок входит в платный курс: разовая покупка, доступ остаётся навсегда. Открой курс, чтобы пройти полный разбор, запустить привязанную диаграмму и сохранить прогресс по треку.
- Bottleneck-и, failure mode-ы и место, где простая схема ломается первой.
- Capacity math, который можно повторить в ответе на интервью.
- Trade-off-ы и ADR-логика, а не только финальная картинка.
- Сохранение прогресса по учебному пути system design.
Курс: System Design Cases
Открыть этот кейс