]> juplo.de Git - demos/kafka/training/commit
Batching zeitnah versendeter Nachrichten ermöglicht
authorKai Moritz <kai@juplo.de>
Sun, 15 Mar 2026 14:47:41 +0000 (15:47 +0100)
committerKai Moritz <kai@juplo.de>
Sun, 13 Sep 2026 14:24:28 +0000 (16:24 +0200)
commit0e1ec891cb8c4190952cbe20877d358790ef1521
tree0f0782ae56aa60332a6a29c23ebf9fe6a11f15d1
parent07454fe807ebda5b619fce59b21ce0c87f8eefe0
Batching zeitnah versendeter Nachrichten ermöglicht

* Durch den Aufruf der blockierenden Methode `get()` wurde erzwungen, das
  der Versand einer Nachricht von Kafka bestätigt wurde, bevor die
  nächste Nachricht an Kafka übergeben werden konnte.
* Der blockierende Aufruf wurde jetzt in eine getrennte asynchrone
  Verarbeitung (in dem Default-Thread-Pool) verschoben.
* Dadurch können jetzt mehrere für den Versand bereitgestellte Nachrichten
  hintereinander an Kafka übergeben werden.
* _Beachte:_ Der Effekt wird erst dann wirklich deutlich, wenn das
  Throttling über `Thread.sleep(500)` deaktiviert wird!
* _Beachte:_ Da die Verarbeitung der Rückmeldung von Kafka über den
  Default-Thread-Pool erfolgt, erfolgt die Erzeugung der Log-Ausgaben
  asynchron in verschiedenen Threads. D.h., die Log-Meldungen werden
  _nicht_ in der Reihenfolge ausgegeben, in der die Nachrichten versendet
  wurden, was auf den ersten Blick sehr verwirrend ist!
src/main/java/de/juplo/kafka/ExampleProducer.java