- Grundlagen von Apache Kafka
- Messaging im Unternehmenskontext
- Service-to-Service Communication
- Streams vs. REST-Interfaces
- Event-Driven-Communication
- System-Architektur
- Producer & Consumer
- Topics & Partitionen
- Advanced Knowledge - Erweiterte Apache Kafka-Themen
- Replication
- Retention & Log Compaction
- Serialisierung mit Avro vs. ProtoBuf, Thrift
- Verwenden der Kafka-Schema-Registry
- KSQL
- Kafka Cluster
- Confluent Schema Registry
- Kafka Security
- Best Practises
- Konfiguration von Topics
- DSGVO
- Apache Kafka in der Anwendung: Beispielhafte Use-Cases
- Workshop
- Aufsetzen einer lokalen Entwicklungsumgebung mit docker-compose
- Programmierung eines Producers in Java oder Kotlin
- Programmierung eines Consumers in Java oder Kotlin
- Integration Testing in Java oder Kotlin
- Kafka Streams API
Anmerkung:
Die Consumer- und Producer-Schnittstellen basieren auf dem Kafka-Nachrichtenprotokoll und können als Referenzimplementierung in Java angesehen werden. Das eigentliche Kafka-Nachrichtenprotokoll ist ein binäres Protokoll und erlaubt es damit, Consumer- und Producer-Clients in jeder beliebigen Programmiersprache zu entwickeln. Damit ist Kafka nicht an das JVM-Ökosystem gebunden.