This chapter covers
- Inside data versus outside data
- Kafka as a decoupled system
- Comparing Kafka to the REST framework
- Comparing Kafka to relational databases
- Kafka and event-driven architectures
We’ve described Kafka extensively in this book and touched on many topics relevant to its use in companies. However, what we haven’t yet discussed is when the use of Kafka is appropriate and how we can compare Kafka with other technologies.
In our opinion, it’s the responsibility of architects and engineers to find the best technology or architecture for a given use case and, in particular, for the given nonfunctional requirements. What makes sense as a technological solution in one company may not work in another company, even with the same use case.
Exciting new technologies such as Kafka can help us solve architectural and technical challenges and enable business models that wouldn’t be easily feasible otherwise. But in the end, it’s never about the technology itself, but how we implement that technology in the company and how we bring along the people affected by it.
There are definitely no cure-alls for all problems, and finding the one and only solution for a given problem is rare. In most companies, we don’t start planning from scratch but must integrate into the existing IT landscape.