Apache Kafka for Developers using Spring Boot[LatestEdition] (Udemy.com)

Learn to build enterprise standard Kafka producers/consumers with Kafka Unit/Integration tests using Spring Boot.

Created by: Dilip S

Produced in 2021

icon
What you will learn

  • Apache Kafka and its Internals
  • Build Enterprise Standard Kafka Client Applications using Spring Boot
  • Writing Unit Tests using JUnit
  • Writing Integration tests using JUnit and Embedded Kafka
  • Build End to End application using Kafka Producer/Consumer and Spring Boot

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 92 / 100

icon
Course Description

This course is structured to give you a theoretical and coding experience with Apache Kafka using SpringBoot. This course is targeted for developers who would like to build enterprise standard Kafka Client applications using SpringBoot.
If you are looking forward to learning the below-listed things:
Use cases where Kafka fits really wellInternals of Kafka and how it worksBuilt Enterprise Standard Kafka Client Applications using Producer/Consumer API using Spring BootUnit/Integration Tests for the Kafka Client ApplicationsThen this is the right course for you. This is a pure hands-on oriented course where you will be learning the concepts through code.
By the end of this course, you will have a complete understanding of coding and implementing Kafka Clients using SpringBoot with Producer/Consumer API.
Getting Started with KafkaIn this section, I will give you all a quick introduction to Apache Kafka, terminologies and different client APIs that are part of KafkaDownload and Install KafkaIn this section, we will download the Kafka distribution from the Kafka Website.
Understanding Kafka Components and its Internals - (Theory + Hands-On)In this section, we will explore the Kafka internals from a theoretical perspective followed by hands-on exploring the Kafka internals.
Learn about the Topics and Partitions in KafkaSetup a Local Kafka Cluster with Multiple BrokersProducer/Consumer messages in the Kafka ClusterLearn about Consumer Offsets and Consumer GroupsCommit Log and Retention PolicyLearn about Kafka Load Distribution and Fault Tolerance and Robustness Application OverViewThis section covers the application that we are going to build as part of this course.
Build SpringBoot Kafka Producer - Hands-OnIn this section, we will learn about building a Kafka Producer using Spring Boot.
Build RestAPI through which the events can be posted into the application from the outside worldExplore KafkaTemplate to publish the data into the Kafka TopicLearn different approaches to produce the message into the KafkaLearn to publish the Kafka Record using HeadersIntegration Testing using JUnit5 - Hands-OnIn this section, we will learn about different approaches to writing Integration tests using Embedded Kafka.
Write Integration test cases to interact with the API using JUnit5Write Integration test cases to interact with Embedded Kafka using JUnit5Unit Testing using JUnit5- Hands-OnIn this section, we will learn about different approaches to writing unit tests Kafka Producer.
Write Unit Tests to the controller layer using @WebMVC annotation and MockMVCAdd the validations to the request payload in the endpointWrite Custom Error Handler for different response codesKafka Producer - Sending Message With Key - Hands-OnIn this section, we will learn about sending the record to Kafka Topic with Key.
Kafka Producer - Important ConfigurationsIn this section, we will learn about different key configurations to consider when it comes to reliable message delivery to KafkaBuild SpringBoot Kafka Consumer - Hands-OnIn this section, we will learn about building a Kafka Consumer using Spring Boot.
Set up the base consumer project library-events consumerLearn about different Spring Kafka Terminologies which are necessary to configure a Kafka ConsumerLearn about how to configure a Kafka Consumer using the @KafkListener AnnotationLearn about how "Spring Boot Auto Configuration works behind the scenes for Kafka Consumer"Consumer Groups and Consumer Offset Management- Hands-OnIn this section, we will code and learn about consumer groups and offset management.
Demonstration how Consumer Groups plays a vital role when it comes to scalable message consumption and consumer rebalanceLearn about the Default consumer offset management by KafkaLearn about how consumer offset can be manually managed from the applicationDemonstration of how to achieve scalable message consumption by increasing the concurrency level to greater than 1Persisting Library Events in DB - Using H2 InMemory DataBaseIn this section, we will code and learn about integrating the DB layer into the library-events-consumer using Spring JPA.
Configuring the H2 In-Memory DBCreate LibraryEvent and Book EntityBuild Service Layer to process LibraryEvent - ADD Event TypeBuild Service Layer to process LibraryEvent - MODIFY Event TypeIntegration Testing using Embedded Kafka - Kafka ConsumerIn this section, we will code and learn to write the Integration tests for the Kafka Consumer.
Configure Embedded Kafka for Integration TestsWrite the Integration test for posting a "NEW" LibraryEvent Write the Integration test for posting an "UPDATE" LibraryEvent Integration Tests for Real Databases using TestContainersError Handling, Retry and Recovery - Kafka ConsumersIn this section, we will learn about the different error handling techniques that are available for Kafka Consumer.
Custom Error HandlerRetry in Kafka ConsumerRetry SpecificExceptions using Custom RetryPolicyRecovery in Kafka ConsumerHandling Recovery in Kafka Consumer Error Handling, Retry/Recovery - Kafka ProducerError Handling in Kafka ProducerRetry in Kafka Producer - Broker Not AvailableRetry in Kafka Producer - Min.
in.
sync.
replicasRetain/Recover Failed Records in Kafka ProducerBy the end of this you will have a complete understand and knowledge of building enterprise standard Kafka Consumers and Producers using Spring Boot with the Unit and Integration tests using EmbeddedKafka.
Who this course is for:
Java/Spring Developers who would like to build Producers/Consumers using Apache KafkaAnyone willing to learn about Apache Kafka and implement using SpringBoot

icon
Instructor Details

Dilip S

Dilip is a software Engineer and tech savvy who have experience building softwares since 2008.
He has a lot of passion towards learning new technologies, staying up to date with the all the new technologies, tools, frameworks and more. He would love to share the knowledge to the world and thats one of the key reasons to be in the Online Teaching Industry.
He loves interacting with other software developers. He believes the fact that interacting with software developers helps sharing the knowledge and learning from them.
During the leisure time I would love to play cricket , watch movies and working out in the gym to have a balance between physical and mental strength.
Dilip has a youtube channel named Code With Dilip where he had been sharing lot of technical content related to languages, framework, best practices and more.
-- D S.

icon
More courses by Dilip S

Modern Java - Learn Java 8 features by coding it

$11.99

Apache Kafka for Beginners - Second Edition

$11.99

icon
More java spring framework courses

Spring & Hibernate for Beginners (includes Spring Boot)

$11.99

Full Stack: Angular and Spring Boot

$11.99

Deploy Java Spring Apps Online to Amazon Cloud (AWS)

$11.99

Learn AWS - Deploy Java Spring Boot to AWS Elastic Beanstalk

$11.99

Spring Framework In Easy Steps

$11.99

Spring Boot Fundamentals

$11.99

icon
Reviews

4.6

87 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Jess Quintero Hernndez on 11/21/2020

Great course! Very helpful to understand better Kafka

By Gil Omer on 11/21/2020

+ Cover a lot of details. Really hands on course.
- The initial setup isn't covered enough, should have a FAQ and an active forum about technical issues with initial setup.

By Dilshadneemuth on 11/14/2020

very good introduction about kafka architecture. simple, clear & concise.

By Bharath V Narendra on 11/7/2020

A very good course. It is turning out to be very useful for my first Kafka implementation project.

By Veerendra Doddi on 11/1/2020

Hi Dilip,
This was very clean explanation which i ever had. Thank you very much... Especially error handling and SSL...
Regards,
Veerendra

By Artem Shyshkin on 10/26/2020

Great diagrams and visualisation to understand internal processes in Kafka. Many hands on coding!

By Artem Ivashchenko on 10/26/2020

It is fine enough regarding Kafka and testing. As for application design, I think it was a bad idea to send event itself to the REST service (it should be a Book I guess) Another point - I think, "New" and "Updated" should be different events (2 POJOs) and database record "create" and "update" operations should be handled by different service bean methods ("NewBookEvent" -> "service.create...")

By Adil Rasheed on 10/25/2020

Thanks!

By Seidu Abbas on 10/24/2020

Very Good Indeed.

By Jean de Dieu TWAGIRUMUKIZA on 10/17/2020

you briefly explained everything except the sink connector

By Abhish Lohithan on 10/15/2020

This is an extremely easy to understand course. Shows the preparation that was taken to prepare this. Recommend this for easy learning along with kafka documentations.

By Amit Medankar on 10/6/2020

Seems like narration done by reading some prewritten content, like text-to-speech reading. Flat pitch narration. Missed some finer conceptual points which are covered by other Kafka presenter on youtube.