Apache Kafka für Java-Entwickler

Apache Kafka ist eine hochgradig verteilte Lösung für das Publish-Subscribe Messaging, die für effiziente Datenannahme und -verteilung unter niedriger Latenz optimiert ist. Das macht das System zu einem geeigneten Kandidaten für die Umsetzung von Streaming-Architekturen, in denen der Fokus auf einer kontinuierlichen Verarbeitung von eingehenden Daten liegt. Apache Kafka bricht dabei mit den Ansätzen traditioneller Messaging-Systeme, um diese Ziele zu erreichen. In diesem Workshop erfahren Sie, was sich hinter Kafkas innovativem Ansatz verbirgt und lernen anhand von konkreten Code-Beispielen und Anwendungssituationen, wie man Apache Kafka in eine neue oder bestehende Java-gestützte Anwendungslandschaft integriert.

Zielgruppe und Vorkenntnisse

Die Zielgruppe für diesen Workshop sind Entwickler und Entwicklerinnen die bisher noch keinerlei Erfahrung mit Apache Kafka als Messaging-Lösung oder als Baustein für eine Streaming-Architektur gemacht haben und nun vor der Herausforderung stehen, die Konzepte dieses Produktes zu verstehen und es Java-seitig in eine Anwendung zu integrieren. Die Inhalte dieses Workshops konzentrieren sich dabei auf Apache Kafka selbst; Kafka Streams, KSQL und Kafka Connector finden zwar Erwähnung, aber sind aus den Praxisbeispielen bewusst in diesem Einführungsworkshop ausgeklammert. Expertenwissen in Java ist nicht notwendig, um den Inhalten zu folgen. Die Teilnehmer und Teilnehmerinnen sollten schon grundlegende Programmiererfahrung in Java mitbringen.

Lernziele und Agenda

  • Messaging vs. Data Streaming - Gemeinsamkeiten und Herausforderungen
  • Designphilosophie und Alleinstellungsmerkmale von Apache Kafka
  • Vertiefung grundlegender Konzepte
    • Topics, Partitions und Offsets
    • Brokers
    • Datenreplikation
  • Integration in eine Java-Anwendung
    • Daten nach Apache Kafka schreiben
    • Daten von Apache Kafka lesen
    • Wahlweise mit Beispielen über die folgenden Bibliotheken
      • Kafka Clients (offizielles SDK)
      • Spring for Kafka
    • Praktische Übung zu diesen Lerninhalten (Java)
  • Datenserialisierung
    • Einführung in Apache Avro
    • Confluent Schema Registry
    • Praktische Übung: Schema-Modellierung und Integration
  • Testen von Kafka-gestützten Komponenten und Anwendungen
    • Praktische Übung: Kafka for JUnit
  • Topic-Modellierung und Benamungsstrategien
  • Vorstellung diverser Kafka-gestützten Architekturen aus echten Projektsituationen
  • Ausblick: Eine Referenzarchitektur für Streaming-Systeme

Gerne berücksichtige ich ihre speziellen Anforderungen bei der Ausgestaltung der konkreten Agenda. Lassen Sie uns einfach dazu sprechen.

Technische Anforderungen

  • Notebook / Latop
  • IDE ihrer Wahl
  • Docker und Docker Compose installiert und lauffähig (ggf. lokale Admin-Rechte auf dem Rechner erteilen)
  • Für den Zugriff auf das Internet bitte ggf. Proxy-/Firewall-/VPN-Einstellungen etc. überprüfen

Dauer

2 Tage

Termine

Termine auf Anfrage. Gerne erstelle ich Ihnen ein unverbindliches Angebot zur Durchführung dieses Workshops.

Hi there! I'm Markus!

I'm an independent freelance IT consultant, a well-known expert for Apache Kafka and Apache Solr, software architect (iSAQB certified) and trainer.

How can I support you?

GET IN TOUCH