Kafka Streams API for Developers Using Java-Spring Boot 3.X

Preview this course

This course is structured to give you both the theoretical and coding experience of developing Kafka Streams applications using Streams API. It also covers the techniques to use Enterprise Standard Kafka Streams application using Spring Boot and Streams API. You will build a real-time Kafka Streams application by the end of this course. Prior experience building Kafka applications is necessary.

Unlimited access to 750+ courses.
Enjoy a Free Trial. Cancel Anytime.

- OR -

30-Day Money-Back Guarantee
Full Lifetime Access.
133 on-demand videos & exercises
Level: Intermediate
English
13hrs 15mins
Access on mobile, web and TV

What to know about this course

Welcome to the Kafka Streams API video course, where you will dive deep into building powerful Kafka Streams applications.

In the first section, you will start by introducing the fundamental concepts and terminologies associated with Kafka Streams development. You will then move on to building a simple Kafka Streams app and testing it locally to gain hands-on experience.
Next, you will explore the various operators available in the Kafka Streams API, gaining a solid understanding of how they contribute to building robust streaming applications. You will also delve into the serialization and deserialization process, learning the best approach to creating a generic serializer and deserializer that can be utilized for any type of message.
Moving forward, you will take on the exciting task of implementing an order management system for a retail company using Kafka Streams. You will explore error handling mechanisms, KTable and GlobalKTable concepts, and dive into stateful operators and aggregation-related functionalities.
Additionally, you will learn about the importance of rekeying records and the use of joins in your application.
Continuing your journey, you will learn about writing automated tests for Kafka Streams apps, including unit tests and integration tests using Embedded Kafka. Additionally, you will explore the concept of a grace period and its application in Kafka Streams.
Finally, you will learn how to package your Kafka Streams app as an executable and launch it effectively.

By the end of this course, you will have a comprehensive understanding of the Kafka Streams API, enabling you to build a wide range of applications using this powerful tool.

Who's this course for?

This course is developed for advanced Java developers, Kafka developers who are curious to learn Kafka Streams API, and Kafka developers who are interested in building advanced streaming applications.

It can also be taken by developers who wish to learn the techniques to test Kafka Streams applications.

Prerequisites for this course include a solid foundation in Java programming and prior experience in building Kafka applications. Familiarity with IntelliJ or any other IDE is recommended. Additionally, a working knowledge of Java 17 and understanding of Gradle or Maven is necessary.


What you'll learn

  • Build advanced Kafka Streams applications using Streams API
  • Build Kafka Streams application using high-level DSL
  • Test Kafka Streams using TopologyTestDriver and JUnit5
  • Test Spring Kafka Streams using EmbeddedKafka and JUnit5
  • Aggregate multiple events into aggregated events
  • Learn to join multiple streams into one joined stream

Key Features

  • Build interactive queries to retrieve the aggregated data through RESTFUL APIs
  • Build a real-time retail streaming application using Streams API
  • Build enterprise standard Kafka Streams application using Spring Boot

Course Curriculum

About the Author

Dilip Sundarraj

Dilip Sundarraj is a software engineer who has experience with building software since 2008. He is passionate about learning modern technologies and staying up to date with all the modern technologies, tools, frameworks, and more. He loves to share his knowledge with the world and that is one of the key reasons for him to be in the online teaching industry. He loves interacting with other software developers and believes that this helps him share knowledge and learn from them. During his leisure time, he loves to play cricket, watch movies, and work out in the gym to have a balance between physical and mental strength. Dilip has a YouTube channel named Code with Dilip, where he has been sharing a lot of technical content related to languages, frameworks, best practices, and more.