Sobes.tech
Назад к вопросам
Senior
5

Как читали сообщения из Kafka: по одному или батчами?

Компании, где спрашивали
Octo

Ответ от нейросети

sobes.tech AI

В Java при работе с Kafka обычно читают сообщения батчами, а не по одному.

Это связано с тем, что Kafka оптимизирована для обработки потоков данных, и чтение батчами повышает производительность и снижает накладные расходы на сетевые вызовы.

Пример чтения сообщений батчами с использованием KafkaConsumer:

KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props);
consumer.subscribe(Collections.singletonList("topic"));

while (true) {
    ConsumerRecords<String, String> records = consumer.poll(Duration.ofMillis(100));
    for (ConsumerRecord<String, String> record : records) {
        System.out.printf("offset = %d, key = %s, value = %s%n", record.offset(), record.key(), record.value());
    }
}

Здесь poll() возвращает сразу набор сообщений (батч), что позволяет эффективно обрабатывать данные.