
Explore Apache Kafka fundamentals, its architecture and terminology, and implement a producer–consumer setup on your computer using springboard to compare it with messaging systems like ActiveMQ or RabbitMQ.
Explore how Apache Kafka acts as a next generation distributed messaging system and streaming data platform. See how it solves the producers consumers problem and enables high volume data flows.
Explore how Apache Kafka delivers fast, scalable real-time data with a distributed publish-subscribe model, using producers, consumers, partitioned replicated logs, and disk persistence for multi-subscriber workflows.
Compare Kafka and RabbitMQ, showing Kafka's real-time streaming with replayable history and consumer replay, versus queue-based routing with publish-subscribe and message guarantees.
Understand how a stream of messages becomes a topic and how producers publish payload bytes to topics. Watch brokers store messages in a cluster as consumers subscribe to topics.
Explore how Kafka brokers are the stateless heart of the cluster, handling topics where producers publish and consumers subscribe, with Zookeeper managing broker changes and SLA-based retention enabling rereading.
ZooKeeper coordinates Kafka brokers, signaling broker health and notifying producers and consumers about new or failed brokers. A topic is divided into partitions spread across brokers to balance load.
Understand how Apache Kafka stores messages on the broker filesystem: partitions map to logical logs, implemented as segment files that flush to disk after configured thresholds, exposing data to consumers.
Install kafka on your computer by navigating to the kafka download page, clicking download, and starting the download before continuing to the next video.
Extract the Kafka bundle, inspect the Windows and Linux bin scripts, and launch Zookeeper first before starting Kafka to manage brokers in the cluster.
Create a data folder in the kafka root with zookeeper and kafka subfolders for zookeeper data and kafka logs, and update the zookeeper properties to point to the data directory.
Update the zookeeper and log files paths by editing the configuration, copying the Kafka data folder, and saving changes in the properties file to enable starting zookeeper.
Discover how to start Zookeeper first and then the Kafka server, using Zookeeper as a discovery service for cluster awareness, and troubleshoot common startup issues on Windows.
Create a topic named quickstart events, publish a message with a producer, and consume it with a consumer, while listing topics and troubleshooting ZooKeeper and Kafka commands.
Learn to create real-time producers and consumers in Apache Kafka with Spring Boot, exchange messages via topics, and run multiple producers and consumers communicating without lag.
Set up your local development environment by installing the Java development kit, a code editor, and Postman for API testing, then configure environment variables, Maven, Git, and MySQL.
Create producer and consumer Spring Boot apps from Spring Initializr, include web and Spring for Apache Kafka, and publish or listen to messages on a Kafka cluster.
Configure a Spring Boot Kafka producer by setting application properties for the bootstrap server and the topic name, then create the producer class and prepare for implementation.
Create a Golf Club Producer using Spring Boot and KafkaTemplate to send messages to a topic, with the topic name from properties, and expose a rest controller to publish messages.
Configure the consumer by copying producer settings into the consumer properties, add a consumer group id, and point to the same Kafka cluster and topic.
Register a Kafka consumer with Spring Boot using a listen method to receive string messages from a topic, then publish via a producer and verify end-to-end messaging.
Publish json data to a Kafka topic using a Spring Boot publisher endpoint, then consume the messages with a consumer, demonstrating Postman requests and end-to-end messaging.
This course will teach everything about Apache Kafka.
How Apache Kafka differs from traditional/regular message broker services like Apache Active MQ or RabbitMQ.
We will also learn about different scenarios in which you can use Apache Kafka and achieve your functionality.
We will implement Apache Kafka with SpringBoot and implement a scenario where we will work with both producer and consumer.
In Apache Kafka, we will go through different topics like:
1. What is Apache Kafka
2. Why do we need Apache Kafka
3. History of Apache Kafka
4. Advantages of Apache Kafka
5. How Apache Kafka differs from traditional messaging brokers like Activ MQ or RabbitMQ
6. We will also compare Kafka with RabbitMQ message broker
7. We will try to understand why Apache Kafka is called a distributed system
8. We will then look at the detailed architecture of Apache Kafka
9. We will look into different components of the Apache Kafka system and try to understand what they do.
10. We will see what is an Apache Kafka Cluster and its importance
11. We will learn about Brokers and their importance in Apache Kafka architecture
12. What is a message and how messages are published and subscribed in distributed mode.
13. What are Partitions and logs and their importance
14. What is the Kafka Storage strategy
15. What is Zookeeper and how its important in Apache Kafka architecture
16. We will then do the local development environment setup
17. After that we will then create a new SpringBoot project from Spring Initializer
18. Then we will go ahead and add the needed maven dependencies and start our development
19. We will implement the producer and consumer scenarios
20. Finally you will get the complete source code of the course.