Java Spring & Apache Kafka Bootcamp - Basic to Complete
Offered By: Udemy
Course Description
Overview
What you'll learn:
- Setup a basic Kafka development environment
- Learn & implement Apache Kafka concepts : topic, partition, publish / consume
- Kafka Stream : Real-time data transformation
- Basic error handling in Kafka
- Learn & implement Java programs to handle asynchronous data integration among multiple systems using Apache Kafka
- How Kafka fit on microservice architecture
New Update 2 :
Learn everything about Kafka in single course:
Rewrite all lectures for better audio quality
Update Spring version to 2.6.x
Update Kafka version to 3.x
Newer alternative for deprecated syntax on Spring Kafka
Learn about Kafka Connect. How it can fit into system architecture, and how easy to ingest data from / to kafka, using Kafka Connect. With real-world sample hands-on
Learn about KsqlDB. Howit can helps speed up kafka usage, even for a team who does not know Java programming language
The whole sections are integrated each other. Learn how to integrate Kafka Connect +Kafka Schema Registry +Kafka Stream +KsqlDB
New Update :
Learn how to use avro with spring kafka, manage avro schema with confluent schema registry
Write producer &consumer without coding using kafka RESTProxy
Find out how Kafka fit on microservice architecture.
How to use Kafka along with RESTAPI&Database transaction
Kafka Stream:
real-time data transformation within Apache Kafka
joining stream
joining table
joining stream-table
global table
Exactly-Once Semantic
----------------------------------------------------------------------------------------------------
Messaging System
Nowadays, we work with multiple systems and data that runs among them. It's a common thing that one system triggers another system(s)process, or data needs to be transferred among systems. Whether your systems built on monolith or microservice, whatever database you use, you need those data moving from one point to another. And you need those movement FAST to be processed immediately (otherwise your life will be ruined).
That kind of demand is so common, and fortunately today's technology has an answer for that. Say hello to messaging system, where you can send message easily from one system to another system(s)asynchronously, in almost-real-time interval. There are some popular messaging system in the market, and in this course we will be talking about one of the most popular :Apache Kafka.
Apache Kafka
Apache Kafkais like central hub where you place all data from source system(s), and the other corresponding systems takes the data, and process it. Apache Kafka is open-source, reliable, and able to works on cluster. It has small learning curve to get started, yet powerful enough for system integrations.
This course includes everything you need to know about basic Apache Kafka, and implementation using Java (Spring Framework). After finishing this course, you should be able to install, configure and use Apache Kafka from Java Program. In this course, we will walk through detailed step-by-step from concept to hands-on Java coding. Given such way, you will learn have the understanding of logic behind and experience how things are done using Apache Kafka and Java source codes.
Java and Spring Boot
Java itself has been a popular language for years. Java is recognized as world's most used programming language by several programming language index. Due it's popularity and long history, Java has a lot of open source projects or framework to helps developer works more efficient.
One of the popular Java framework is Spring Framework. Over years, Spring Framework has grown substantially among Java community. Almost all software components required by a Java application is available within Spring Framework. However, configuring Spring requires some effort. This involves setting up library dependencies, then configuring the required Java Spring beans using XMLor annotations in Java code. Spring developers soon realized that it is possible to automate much of this work.
So in 2014, Spring Boot 1.0 released for Java community. Spring Boot gives Java programmers a lot of automatic helpers, and lead to quick large scale adoption of the project by Java developers.
Spring provides good support for Kafka and provides the abstraction layers to work with over the native Kafka Java clients. With Spring, develop application to interact with Apache Kafka is becoming easier.
What You Will Get
After finishing the course, you will learn:
Installation of Apache Kafka and Java, for development environment
Apache Kafka key concepts
Create publisher and consumer using Java (Spring Boot)
Basic error handler if there is a failure during processing Apache Kafka message
Basic understanding how Kafka fit on Microservice Architecture
The course will explains to you not only the theory of Apache Kafka, but also a lot of hands-on coding to get your hands dirty and your brain working. Whether you are a hobbyist, beginner, or experienced developer, this course will surely brings added value for you!
Road to Microservices
Message broker is one important pillar of microservice architecture. In micro service, we use asynchronous messaging for inter-service communication. Services communicating by exchanging messages over messaging channels like Apache Kafka.
In this course, you will learn the theory and hand-code of messaging with Apache Kafka, which is a communication pillar of microservice architecture.
Later on, you can learn further about Microservice Architecture &Pattern with Kafka as it's important component.
Important!
This course uses Spring Boot version 2.x.
On late November 2022, Spring Boot 3.0.0 released. It takes time for updating the course to Spring boot 3.0.0, but Iwill do my best.
In the meantime, you have several options:
works with latest version of Spring boot 2.x, and the course should full compatible
works with Spring boot 3.x. Most of the courses should works, but some parts might need adjustment.
Taught by
Timotius Pamungkas
Related Courses
Audit System with Spring Boot AOPCoursera Project Network via Coursera Jenkins : Automating your delivery pipeline
Coursera Project Network via Coursera Learn Spring
Codecademy Spring Framework Certification Training
Edureka Java Spring Boot Application Software Testing
Coursera Project Network via Coursera