Search Tutorials

What is Apache Kafka| JavaInUse

What is Apache Kafka?

In this tutorial we will be getting an introduction to Apache Kafka. In next tutorial we will be looking at Apache Kafka architecture.
Apache Kafka is an open-source stream-processing software platform developed by LinkedIn and donated to the Apache Software Foundation. It has been developed using Java and Scala. Apache Kafka is a high throughput distributed messaging system for handling real-time data feeds.

RabbitMQ - Table Of Contents

What is Apache Kafka Understanding Apache Kafka Architecture Internal Working Of Apache Kafka Getting Started with Apache Kafka - Hello World Example Spring Boot + Apache Kafka Example


This tutorial is explained in the below Youtube Video.

Applications now follow microservices architecture. So we have a distributed architecture where number of systems interact with each other. Applications now create and process lot of data. Complex web of applications involving point to point data movement. This involves moving large amount of data from one point to another.
Need for Apache Kafka
The obvious choice to resolve above issue is to use a messaging system. But traditional messaging systems have following drawbacks-
Traditional Messaging System Apache Kafka
Limited Scalibility Scalable
Transient in-memory persistence Messages also stored in replicated log
Comparatively lower throughput Comparatively higher throughput

So Apache Kafka is a much Reliable and high throughput streaming system that can move large amount of data between applications.
Apache Kafka Tutorial
Real time example of Apache Kafka is Uber cab booking service. Uber makes use of Kafka to send User and Cab information to Uber Cab Booking System.
Uber Using Apache Kafka