Skip to content

Files

Latest commit

f444493 · Apr 13, 2025

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Apr 13, 2025
Apr 13, 2025
Feb 13, 2025
Mar 11, 2025
Feb 13, 2025

Kafka Streams Branch

This module streams records of type <String, KafkaUser> from the USER_TOPIC and splits the stream into different branches based on the user's last name. It demonstrates the following:

  • How to use the Kafka Streams DSL, including split(), branch() and peek().
  • Unit testing using the Topology Test Driver.

topology.png

Prerequisites

To compile and run this demo, you’ll need:

  • Java 21
  • Maven
  • Docker

Running the Application

To run the application manually:

  • Start a Confluent Platform in a Docker environment.
  • Produce records of type <String, KafkaUser> to the USER_TOPIC. You can use the Producer User for this.
  • Start the Kafka Streams application.

To run the application in Docker, use the following command:

docker-compose up -d

This command will start the following services in Docker:

  • 1 Kafka Broker (KRaft mode)
  • 1 Schema Registry
  • 1 Control Center
  • 1 Producer User
  • 1 Kafka Streams Branch