Related System Design
Design a Key-Value Store
Design a distributed key-value store like Dynamo or Cassandra with high availability.
Design a high-throughput distributed message queue similar to Apache Kafka or RabbitMQ.
We need to build a distributed message queue system that can handle millions of events per second with persistent storage. Think Kafka. How do we design the architecture?
Use this as one discussion aid, not a single correct answer. Your design should follow from the requirements, scale, and trade-offs you establish.
graph LR
A["Design a Distributed Message Queue"]
A --> F1["Log-based storage vs Queue-based storage"]
A --> F2["Partitioning and Sharding for scale"]
A --> F3["Consumer Groups and Offset management"]
A --> F4["Data durability and replication"]
A --> F5["Delivery semantics At-least-once, Exactly-once"]Practice drawing this system component-by-component on a live whiteboard while the interviewer probes at your target level.
Continue to DashboardContinue preparing
Related System Design
Design a distributed key-value store like Dynamo or Cassandra with high availability.
Related System Design
Design a scalable notification service that sends emails, SMS, and push notifications to millions of users.
Related System Design
Design a high-concurrency ticket booking system (e.g., Ticketmaster) that can sell out millions of tickets in minutes without overselling.
Related System Design
Design a scalable web crawler like Googlebot to index the internet.