L'API consumer di alto livello sembra leggere un messaggio alla volta.Kafka ha un consumatore in batch?
Questo potrebbe essere piuttosto problematico per i consumatori se vogliono elaborare e inviare tali messaggi ad altri consumatori a valle come Solr o Elastic-Search perché preferiscono avere messaggi in blocco piuttosto che uno alla volta.
Non è banale archiviare questi messaggi anche in memoria, perché gli offset in Kafka dovranno anche essere sincronizzati solo quando il batch è già impegnato, altrimenti un kafka-consumatore arrestato con messaggi downstream non inviati (come in Solr o ES) avrà i suoi offset già aggiornati e quindi messaggi allentati.
Il consumatore può consumare messaggi più volte se si blocca dopo aver inviato messaggi a valle ma prima di aggiornare gli offset dei messaggi.
Se Kafka consuma messaggi in batch, alcuni suggerimenti sul codice/documentazione saranno molto apprezzati.
Grazie!
Quale versione di Kafka sono stai chiedendo? Presumo che se stai parlando di High Level Consumer è 0.8.2 o precedente. – morganw09dev