]> 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, 15 Mar 2026 16:04:04 +0000 (17:04 +0100)
commit6433115ccdf36a4c00b5b7e20c50b6c279581b2f
treedd2dd74ef884a3b0dbdde568c186c757b5bc23d1
parent6befa4b2be07941b304548aa1907f4bbd3a8f49f
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