HLD prep is optimised for larger screens
Open on a laptop or desktop (1024px+) for the diagram canvas and the section sidebar side-by-side.
Problem Understanding
Restate the problem in your own words.
Design a Distributed Message Queue (Kafka-class)
Design a Kafka-class distributed message queue: producers append messages to topics, consumers read them in order with at-least-once semantics, partitions scale throughput, replication tolerates broker failure, and retention policies cap disk growth. The hard parts are partition assignment (consumer rebalancing), exactly-once semantics with idempotent producer + transactional commits, and tail latency under hot-partition skew.
- Apache KafkaThe canonical log-structured queue. Trillions of messages/day at the largest tenants.
- Amazon KinesisManaged Kafka-like streams; shards instead of partitions, similar trade-offs.
- Google Pub/SubManaged topic-based messaging with auto-scaling consumers; pull + push delivery models.
- RedpandaC++ Kafka-compatible broker — lower tail latency, no JVM, single-binary ops.
Your task: read the problem above, then write what the system is, who uses it, the rough scale, and the headline UX expectation — in your own words. Submit for AI review when you're ready.
Click any step in the sidebar to jump around — sections don't have to be done in order. Press ? any time to see all shortcuts.