
Explore why monolithic architectures give way to microservices, and how Apache Kafka’s broker, durable topics, and distributed streaming platform enable high-performance, scalable interservice communication.
Explore how topics in Kafka organize events, from device location updates to logging data, enabling long retention and multi-application reads.
Learn how partitioning a topic into multiple partitions scales Kafka and ensures availability, with round-robin routing when no key and key-based partitioning that preserves ordering within each partition via offsets.
Learn how Kafka brokers, as servers in a distributed cluster, host topics and partitions, enable replication across brokers, and allow clients to read and write data.
Explore partition replication in Kafka: leaders handle all reads and writes, while followers copy data to ensure fault tolerance, with replication factor greater than one and automatic leader election.
Discover how Kafka producers publish data to topics and partitions via partition leaders, use round-robin when keys are absent, and manage acknowledgments to balance durability and latency.
Learn how Kafka consumers read data from topics across partitions, coordinate in groups, manage offsets, and choose delivery semantics such as at most once, at least once, and exactly once.
Understand distributed systems with brokers and clusters, where producers and consumers exchange data through replication, partitioning, and consensus, coordinated by ZooKeeper and gossip protocols in Kafka-like setups.
Understand how Zookeeper coordinates Kafka brokers by registering peers with ephemeral nodes, electing a controller, and reassigning partitions and leaders across the cluster.
Download and install Docker for Windows or Mac, verify the installation in the terminal, and prepare to run ZooKeeper and Kafka containers in upcoming lectures.
Learn to start a basic Kafka cluster using docker-compose by defining zookeeper and broker services, configuring environment variables and advertised listeners, and managing containers with docker compose down.
Learn how to manage kafka topics using the topics CLI, including creating, listing, and describing topics with docker containers and a bootstrap server.
Configure three Kafka broker environment variables, note that a single broker defaults replication factor to one for topics, and warn that missing variables can affect producers and consumers.
Launch a Kafka cluster in docker, create a topic with bootstrap server, and publish messages using kafka-console-producer. Learn how topics, brokers, zookeeper, and acknowledgments shape producer behavior.
Learn to use the kafka-console-consumer CLI to read messages from a topic starting at the beginning with a configured bootstrap server, after creating a topic and producing sample data.
Explore console consumer in Kafka: set up brokers and ZooKeeper, create topics, run producer and multiple consumers, observe consumer groups, offsets, and lag to understand data flow.
Create a simple producer and consumer in Node.js to publish and read messages on a Kafka topic, connect to a cluster, and run with Docker Compose.
Explore KafkaJS client config details, tune connection timeout and request timeout, adjust retry settings, and learn to set log levels, authentication, and logging.
Configure KafkaJS producer to manage acknowledgements, keys, partitions, and headers such as correlation ID, enabling batch messages and ensuring data is stored by the leader and replicas.
Start and verify a KafkaJS producer with a consumer, logging messages, keys, and headers. Inspect topic partitions and the message flow for beginners.
Learn to produce data to multiple Kafka topics with a multi topic producer in Node.js, defining brokers, topics, keys and values, and sending messages to topics E and B.
Learn to implement producer transactions with KafkaJS, using idempotent producers and max in-flight requests, define a transactional id, begin and commit or abort transactions, and send to a topic.
Explore how to configure a Kafka consumer with Node.js for batch processing, including group id, multi-topic subscriptions, reading from the beginning, processing messages, and offset management.
Understand partition concurrency by starting multiple consumer instances, each reading from a distinct partition to preserve order. Align the number of consumers with the partition count for true parallelism.
More than 80% of all Fortune 100 companies trust, and use Kafka.
Apache Kafka is an open-source distributed event streaming platform used by thousands of companies for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
Application of Kafka
Apache Kafka is based on the commit log, and it allows users to subscribe to it and publish data to any number of systems or real-time applications. Example applications include managing passenger and driver matching at Uber, providing real-time analytics and predictive maintenance for British Gas smart home, and performing numerous real-time services across all of LinkedIn.
About the Course
I am creating Apache Kafka for absolute beginners course to help you understand the Apache Kafka Internal, the architecture of Kafka distributed system, Role of Zookeeper, Kafka CLI and Client With NodeJS.
We'll learn all the fundamentals of Apache Kafka in simple way with NodeJS.
At the end of this course, you'll be in good state to work on apache kafka project:
The Apache Kafka Architecture
Kafka Fundamental topic: Topics, Partitions, Brokers, Replicas, Producers, Consumers and Zookeeper
Launch your own Kafka cluster with docker – Windows / MacOS X / Linux
Kafka Command Line Interface (CLI)
Code Producer and Consumers using the NodeJS (KafkaJS Library)
Learn How kafka Work as distributed system
What is Message Broker
Kafka Client Configuration
Producer Configuration in detail
Transaction
Batch Processing
Learn How to setup Logger With kafka Client
etc...