demos/kafka/training
17 months agoVorlage spring-consumer--json--vorlage spring-consumer--json--vorlage---lvm-2-tage--easy-path
Kai Moritz [Sun, 13 Nov 2022 21:14:00 +0000 (22:14 +0100)]
Vorlage

17 months agoVerbesserungen & Korrekturen aus spring-consumer übernommen spring-consumer--json---lvm-2-tage--easy-path
Kai Moritz [Wed, 23 Nov 2022 03:04:06 +0000 (04:04 +0100)]
Verbesserungen & Korrekturen aus spring-consumer übernommen

17 months agoDas README.sh führt die Reaktion auf eine Poison Pill vor
Kai Moritz [Fri, 18 Nov 2022 16:17:42 +0000 (17:17 +0100)]
Das README.sh führt die Reaktion auf eine Poison Pill vor

* Das vorgeführte Verhalten entspricht der Übung "Poison Pill"
* Bis auf die Build-Spezifika entspricht die `README.sh` der aus der
  Vorlage `spring-consumer--fehlerbehandlung`.

17 months agoDie App beendet sich, wenn der SimpleConsumer stolpert
Kai Moritz [Fri, 18 Nov 2022 16:18:01 +0000 (17:18 +0100)]
Die App beendet sich, wenn der SimpleConsumer stolpert

17 months agoSimpleConsumer signalisiert Exit-Status im Rückgabewert
Kai Moritz [Fri, 18 Nov 2022 15:52:21 +0000 (16:52 +0100)]
SimpleConsumer signalisiert Exit-Status im Rückgabewert

17 months agoSpring-Kafka Version des Simple-Consumer auf JSON-Nachrichten umgestellt
Kai Moritz [Mon, 7 Nov 2022 20:44:40 +0000 (21:44 +0100)]
Spring-Kafka Version des Simple-Consumer auf JSON-Nachrichten umgestellt

18 months agoKonsumption der Nachricht in eine separate Methode verlagert
Kai Moritz [Sat, 12 Nov 2022 14:01:00 +0000 (15:01 +0100)]
Konsumption der Nachricht in eine separate Methode verlagert

* Dies ist eine Vorbereitung für die Umstellung auf `@KafkaListener`
* Durch die Umstellung wird der Code vor/nach der Umstellung besser
  vergleichbar.
* Denn mit `@KafkaListener` wird direkt eine Methode annotiert, die dann
  von Spring die deserialisierte Nachricht injiziert bekommt.

18 months agoVersion des Simple-Consumer, mit Auto-Konfiguration durch Spring Kafka
Kai Moritz [Mon, 7 Nov 2022 20:40:24 +0000 (21:40 +0100)]
Version des Simple-Consumer, mit Auto-Konfiguration durch Spring Kafka

18 months agoSpring-Boot Version des Simple-Consumer
Kai Moritz [Mon, 7 Nov 2022 20:28:28 +0000 (21:28 +0100)]
Spring-Boot Version des Simple-Consumer

18 months agoDas Setup lässt sich mit `docker-compose up setup` starten
Kai Moritz [Sat, 12 Nov 2022 17:25:02 +0000 (18:25 +0100)]
Das Setup lässt sich mit `docker-compose up setup` starten

18 months ago.editorconfig ergänzt - siehe: ttps://editorconfig.org/
Kai Moritz [Tue, 23 Aug 2022 15:23:35 +0000 (17:23 +0200)]
.editorconfig ergänzt - siehe: ttps://editorconfig.org/

* Einziger gangbarer Weg, um IntelliJ beizubiegen, Leerzeichen für die
  Einrückung zu verwenden!
* ...aber auch für einige andere Dinge ganz praktisch...

18 months agoDas konfigurierte Topic wird auch verwendet
Kai Moritz [Fri, 4 Nov 2022 11:50:11 +0000 (12:50 +0100)]
Das konfigurierte Topic wird auch verwendet

18 months agounsubscribe() im Fehlerfall ergänzt
Kai Moritz [Fri, 4 Nov 2022 07:42:48 +0000 (08:42 +0100)]
unsubscribe() im Fehlerfall ergänzt

18 months agoName/Beschreibung in POM an andere Versionen angepasst
Kai Moritz [Fri, 4 Nov 2022 07:42:20 +0000 (08:42 +0100)]
Name/Beschreibung in POM an andere Versionen angepasst

18 months agoCompose-Setup und README.sh an überarbeitete Übung angepasst
Kai Moritz [Tue, 1 Nov 2022 10:17:32 +0000 (11:17 +0100)]
Compose-Setup und README.sh an überarbeitete Übung angepasst

18 months agoREADME.sh an geändertes Compose-Setup angepasst simple-consumer--kraft-bitnami
Kai Moritz [Tue, 1 Nov 2022 10:04:40 +0000 (11:04 +0100)]
README.sh an geändertes Compose-Setup angepasst

18 months agoUmstellung auf 1 Controller und 3 Broker
Kai Moritz [Wed, 26 Oct 2022 17:00:45 +0000 (19:00 +0200)]
Umstellung auf 1 Controller und 3 Broker

18 months agoSetup auf KRAFT umgestellt
Kai Moritz [Mon, 24 Oct 2022 15:33:02 +0000 (17:33 +0200)]
Setup auf KRAFT umgestellt

* Der Zookeeper wird dann nicht mehr benötigt.
* Broker-Images auf `bitnami/kafka:3.3.1` umgestellt, da die Confluent-
  Images den KRAFT-Modus noch nicht unterstützen.

18 months agoVerwendete Syntax in docker-compose vereinheitlicht
Kai Moritz [Sun, 23 Oct 2022 12:14:12 +0000 (14:14 +0200)]
Verwendete Syntax in docker-compose vereinheitlicht

19 months agoFix: Übung Consumer-Groups mit simple-consumer
Kai Moritz [Thu, 29 Sep 2022 20:17:12 +0000 (22:17 +0200)]
Fix: Übung Consumer-Groups mit simple-consumer

19 months agoInitiale Lese-Position auf die älteste bekannte Nachricht gesetzt
Kai Moritz [Sat, 24 Sep 2022 18:25:39 +0000 (20:25 +0200)]
Initiale Lese-Position auf die älteste bekannte Nachricht gesetzt

19 months agoImplementierung an Folien angepasst: Beendigung durch `+Consumer.wakeup()+`
Kai Moritz [Sat, 24 Sep 2022 12:46:40 +0000 (14:46 +0200)]
Implementierung an Folien angepasst: Beendigung durch `+Consumer.wakeup()+`

19 months agoVorführung der Übung verwendet den `simple-producer`
Kai Moritz [Sat, 24 Sep 2022 12:46:01 +0000 (14:46 +0200)]
Vorführung der Übung verwendet den `simple-producer`

19 months agoAusführung von README.sh resilienter
Kai Moritz [Sat, 24 Sep 2022 12:45:29 +0000 (14:45 +0200)]
Ausführung von README.sh resilienter

21 months agoCompose-Setup an das aus den Producer-Übungen angepasst
Kai Moritz [Tue, 2 Aug 2022 20:01:35 +0000 (22:01 +0200)]
Compose-Setup an das aus den Producer-Übungen angepasst

* Es wird jetzt der Rest-Producer verwendet.
* Um die Nachrichten zu erzeugen, werden die Rest-Clients verwendet.
* Ziel: Dies ist näher an dem Setup aus den Wordcount-Übungen.
* Versucht das Timing in dem README-Skript unabhängiger von Timing-Fragen
  zu machen - scheitert aber daran, dass das Skript nicht gezielt darauf
  warten kann, dass das neu angelegte Topic zur Verfügung steht.

21 months agoAsciidoc-Tags entfernt
Kai Moritz [Tue, 2 Aug 2022 19:04:16 +0000 (21:04 +0200)]
Asciidoc-Tags entfernt

21 months agoFür eine Übersichtliche Übergabe sollte CooperativeStickyAssignor aktiv sein
Kai Moritz [Tue, 2 Aug 2022 19:00:36 +0000 (21:00 +0200)]
Für eine Übersichtliche Übergabe sollte CooperativeStickyAssignor aktiv sein

* Per Default ist immer noch der RangeAssignor vorgegeben, so dass die
  Partitionen bei jedem Rebalance komplett neu zugeordnet werden.
* Um bei der Betrachtung der Effekte von Sauberem Stop vs. Kill vs. Freeze
  den Überblick behalten zu können, wurde der CooperativeStickyAssignor
  aktiviert.

21 months agoAnpassungen des Projekts/Setups aus 'simple-producer' übernommen
Kai Moritz [Mon, 1 Aug 2022 21:39:56 +0000 (23:39 +0200)]
Anpassungen des Projekts/Setups aus 'simple-producer' übernommen

21 months agoImplementierung des Consumers aus 'first-contact' vereinfacht
Kai Moritz [Mon, 1 Aug 2022 20:55:48 +0000 (22:55 +0200)]
Implementierung des Consumers aus 'first-contact' vereinfacht

* Code für ordentliches Herunterfahren so weit wie möglich vereinfacht.
* Dabei den Code möglichst eng an die Producer-Implementierung angelehnt.

21 months agoAngleichungen zwischen Producer/Consumer
Kai Moritz [Mon, 1 Aug 2022 21:07:55 +0000 (23:07 +0200)]
Angleichungen zwischen Producer/Consumer

21 months agoFehlerchen in Logmeldung korrigiert
Kai Moritz [Mon, 1 Aug 2022 20:57:08 +0000 (22:57 +0200)]
Fehlerchen in Logmeldung korrigiert

21 months agoMöglichst einfach gehaltener technisch vollständiger Producer
Kai Moritz [Wed, 27 Jul 2022 08:36:43 +0000 (10:36 +0200)]
Möglichst einfach gehaltener technisch vollständiger Producer

* Unterschiede zu dem Producer aus `first-contact`:
** Der Producer erzeugt endlos alle ca. 500ms eine Nachricht.
** Der Producer beendet sich ordentlich, wenn STRG-C gedrückt wird.
** Der Producer wird auch als Docker-Image gebaut
* Das Compose-Setup an das Setup aus den vorhergehenden Übungen
  angegelichen.

21 months agoUpgrade von Spring Boot und den Confluent-Kafka-Images
Kai Moritz [Fri, 22 Jul 2022 18:04:07 +0000 (20:04 +0200)]
Upgrade von Spring Boot und den Confluent-Kafka-Images

* Upgrade der Kafk-Images von Confluent 7.0.2 auf 7.1.3
** Unterstützt Kafka 3.1.x (siehe https://docs.confluent.io/platform/current/installation/versions-interoperability.html[Versions-Matrix])
* Upgrade für Spring Boot von 2.6.5 auf 2.7.2
** Enthält Kafka: 3.1.1
** Enthält Spring Kafka: 2.8.8

2 years agoUpgrade der Images von Confluent 6.2.0 auf 7.0.2
Kai Moritz [Sun, 3 Apr 2022 06:15:30 +0000 (08:15 +0200)]
Upgrade der Images von Confluent 6.2.0 auf 7.0.2

2 years agoREADME.sh verwendet den cli-Service für Kommandos
Kai Moritz [Fri, 1 Apr 2022 09:56:34 +0000 (11:56 +0200)]
README.sh verwendet den cli-Service für Kommandos

2 years agoFälschlich hartkodiertes Topic gegen Variable getauscht
Kai Moritz [Fri, 25 Mar 2022 14:27:50 +0000 (15:27 +0100)]
Fälschlich hartkodiertes Topic gegen Variable getauscht

2 years agoCode reorganisiert, um Änderungen vergleichbarer zu machen
Kai Moritz [Fri, 25 Mar 2022 10:19:03 +0000 (11:19 +0100)]
Code reorganisiert, um Änderungen vergleichbarer zu machen

2 years agoUpgrade für Spring Boot 2.6.0 -> 2.6.5
Kai Moritz [Fri, 25 Mar 2022 08:25:54 +0000 (09:25 +0100)]
Upgrade für Spring Boot 2.6.0 -> 2.6.5

* Kafka: 3.0.1
* Spring Kafka: 2.8.4

2 years agoFirst Contact: Simple Producer & Consumer
Kai Moritz [Tue, 14 Dec 2021 17:55:02 +0000 (18:55 +0100)]
First Contact: Simple Producer & Consumer