This is intended to be a facilitated workshop to teach the basics of using Apache Kafka with Spring Boot. Each lab can be self-guided with additional options for "extra credit" and additional topics to discuss at the end of each.
The following assumptions apply to the lab:
- You are familiar with Java
- You are comfortable executing commands from the CLI
- You have some basic knowledge of messaging (PubSub, EventBus, etc.)
- Java 8+ (Java 11 preferred)
- You use a modern IDE like IntelliJ or Eclipse (example snippets do not include imports)
- Docker
- You have some basic networking knowledge
- 01 Intro - What is Apache Kafka? (5m)
- 02 Lab - Installing Apache Kafka (10m)
- 03 Demo - Kafka Concepts (10m)
- 04 Lab - Kafka Topics (5m)
- 05 Lab - Spring Boot Producer (15m)
- 06 Lab - Spring Boot Testing (15m)
- 07 Lab - Spring Boot Consumer (15m)
- 08 Lab - Spring Boot Error Handling (10m)
- 09 Lab - Using Docker Compose (15m)
- 10 Lab - Kafka Replicas (10m)
- 11 Lab - Producer Tweaks (5m)
- 12 Lab - Spring Boot Consumer - SerDes (10m)
- 13 Lab - Spring Boot Consumer - Dead Letter Topic (15m)
- 14 Lab - Spring Boot Observability (5m)
- 15 TODO