]> 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, 22 Mar 2026 20:02:05 +0000 (21:02 +0100)
commitd94a130ab90361028c238d516d946ce2d82675b3
tree683dc690be9e553e19a004455693033847e18ebc
parent9e21e3d2ee3d7ae1459b7249bdb408c4f3228994
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