This chapter covers
- Key scenarios where Kafka excels
- Identifying situations where Kafka may not be the ideal choice
- Comparing Kafka with other technologies that serve similar purposes
When considering the introduction of new technology, it’s crucial to understand both its potential applications and its limitations. Messaging solutions, for instance, vary widely, and different scenarios may be better addressed by specific technologies. However, it’s often advisable to use existing products for new challenges instead of adopting a new solution for every distinct use case.
Now that you understand the basics of how Kafka works, it’s time to put that knowledge to work so you can turn uncertain “should we use Kafka?” conversations into confident, defensible decisions grounded in clear patterns and trade-offs. In this chapter, we’ll walk through high-impact use cases—notifications, external data integration, real-time analytics, and log aggregation—showing when Kafka’s guarantees help and what they cost. To pick the right tool for each job, it’s also crucial to understand antipatterns and edge cases. We’ll also look at alternatives to using Kafka—RabbitMQ, Pulsar, and managed cloud services. You’ll leave this chapter with a practical checklist for evaluating Kafka’s capabilities and appropriateness, a solid mental model of its limits, and implementation pointers for both Kafka-first and Kafka-free designs.