Kafka Streams with Spring Cloud Stream
What you'll learn
- Designing, Developing and Testing Stream Processing Applications
- Spring Cloud Streams and Kafka Streams Architecture
- Kafka Streams Binder Implementation for Spring Cloud Streams
- Kafka Streams DSL and Programing with Kafka Streams API
- Working with JSON, AVRO, and other Custom Serializations
- Handling Errors and Exception
- Exactly Once Implementation with Kafka Streams
- Unit Testing Kafka Streams Application
- Programming knowledge using Spring Boot framework
- Apache Kafka fundamental knowledge
- A Recent 64-bit Windows/Mac/Linux machine with 4 GB RAM (8 GB recommended)
About the Course
I am creating Kafka Streams with Spring Cloud Streams to help you understand stream processing in general and apply it to Kafka Streams Programming using Spring Boot.
My approach to creating this course is a progressive common-sense approach to teaching a complex subject. Using this unique approach, I will help you apply your general ability to perceive, understand, and reason the concepts progressively that I am explaining in this course.
Who should take this Course?
Kafka Streams with Spring Cloud Streams course is designed for software engineers willing to develop a stream processing application using the Kafka Streams library and Spring Boot. I am also creating this course for data architects and data engineers responsible for designing and building the organization’s data-centric infrastructure. Another group of people is the managers and architects who do not directly work with Kafka implementation, but they work with the people who implement Kafka Streams at the ground level.
Kafka Version used in the Course
This course is using the Kafka Streams library compatible with Spring Cloud 2020. I have tested all the source code and examples used in this course on Confluent Platform 6.0.0 which is compatible with Apache Kafka 2.6 open source distribution.
Source Code, Development IDE, Build Tool, Logging, and Testing Tools
This course is fully example-driven, and I will be creating many examples in the class. The source code files for all the examples are included in your study material.
This course will be making extensive use of IntelliJ IDEA as the preferred development IDE. However, based on your prior experience, you should be able to work with any other IDE designed for Spring application development.
This course will be using Apache Maven and Gradle as the preferred build tool. However, based on your prior experience, you should be able to use any other build tool designed for Java applications.
This course also makes use of Log4J2 to teach you industry-standard log implementation in your application.
We will be using JUnit5, which is the latest version of JUnit, for implementing Unit Test Cases.
Example and Exercises
Working examples and exercises are the most critical tool to convert your knowledge into a skill. I have already included a lot of examples in the course. This course also consists of some programming assignments as and when appropriate. These exercises will help you validate and check your concepts and apply your learning to solve programming problems.
Who this course is for:
- Software Engineers and Architects who are willing to design and develop a Stream Processing Application using Kafka Streams Library.
- Spring Boot Programmers aspiring to learn everything necessary to start implementing real-time streaming applications using Apache Kafka
Learning Journal is a small team of people passionate about helping others learn and grow in their careers by bridging the gap between their existing and required skills. In our quest to fulfill this mission, we are authoring books, publishing technical articles, and creating training videos to help IT professionals and students succeed in the industry.
Together we have over 40+ years of experience in IT as a developer, architect, consultant, trainer, and mentor. We have worked with international software services organizations on various data-centric and Bigdata projects.
Learning Journal is a team of firm believers in lifelong continuous learning and skill development. To popularize the importance of lifelong continuous learning, we started publishing free training videos on our YouTube channel. We conceptualized the notion of continuous learning, creating a journal of our learning under the Learning Journal banner.
We authored various skill development courses, training, and technical articles since the beginning of the year 2018.
Prashant Kumar Pandey is passionate about helping people to learn and grow in their career by bridging the gap between their existing and required skills. In his quest to fulfill this mission, he is authoring books, publishing technical articles, and creating training videos to help IT professionals and students succeed in the industry.
With over 18 years of experience in IT as a developer, architect, consultant, trainer, and mentor, he has worked with international software services organizations on various data-centric and Bigdata projects.
Prashant is a firm believer in lifelong continuous learning and skill development. To popularize the importance of lifelong continuous learning, he started publishing free training videos on his YouTube channel and conceptualized the idea of creating a Journal of his learning under the banner of Learning Journal.
He is the founder, lead author, and chief editor of the Learning Journal portal that offers various skill development courses, training, and technical articles since the beginning of the year 2018.