Recall & Review
beginner
What is Apache Kafka primarily designed for?
Apache Kafka is designed as a distributed streaming platform that handles high-throughput, fault-tolerant, and scalable event streaming and message processing.
Click to reveal answer
intermediate
How does RabbitMQ differ from Kafka in message handling?
RabbitMQ is a traditional message broker that supports complex routing and message acknowledgments, focusing on reliable delivery and flexible messaging patterns like queues and topics.
Click to reveal answer
beginner
What is a key limitation of Redis Pub/Sub compared to Kafka and RabbitMQ?
Redis Pub/Sub does not persist messages; if a subscriber is offline, it misses messages. It is best for real-time messaging but not for guaranteed delivery or message durability.
Click to reveal answer
intermediate
Which system is best suited for high-throughput event streaming and long-term storage?
Kafka is best suited for high-throughput event streaming and long-term storage due to its distributed log architecture and message retention capabilities.
Click to reveal answer
advanced
What messaging pattern does RabbitMQ excel at that Kafka does not natively support?
RabbitMQ excels at complex routing patterns like topic exchanges and direct exchanges, supporting flexible message routing and selective consumption.
Click to reveal answer
Which messaging system stores messages on disk for durability by default?
✗ Incorrect
Kafka stores messages on disk to ensure durability and fault tolerance.
Which system does NOT guarantee message delivery if the subscriber is offline?
✗ Incorrect
Redis Pub/Sub does not persist messages, so offline subscribers miss messages.
Which messaging system is best for complex routing and selective message consumption?
✗ Incorrect
RabbitMQ supports complex routing patterns like topic and direct exchanges.
Which system is designed as a distributed commit log for event streaming?
✗ Incorrect
Kafka is designed as a distributed commit log for event streaming.
Which system is best for real-time messaging without message persistence?
✗ Incorrect
Redis Pub/Sub is optimized for real-time messaging but does not persist messages.
Explain the main differences between Kafka, RabbitMQ, and Redis Pub/Sub in terms of message durability and delivery guarantees.
Think about how each system handles messages when consumers are offline.
You got /3 concepts.
Describe scenarios where you would choose Kafka over RabbitMQ or Redis Pub/Sub.
Consider long-term storage and scalability needs.
You got /3 concepts.