Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Kafka: consumer, batch

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

Вопрос проверяет понимание производительности Kafka и принципов работы consumer’ов.

Короткий ответ

Kafka читает сообщения батчами.
Consumer получает набор сообщений за один poll.
Это снижает накладные расходы на сеть и CPU.
Размер батча можно настраивать.
Такой подход обеспечивает высокую пропускную способность.

Длинный ответ

Kafka оптимизирована под потоковую обработку больших объёмов данных.

Основная идея

Kafka работает не с отдельными сообщениями, а с пачками данных.

Как это выглядит на практике

Consumer:

  • делает запрос poll()

  • получает набор сообщений из одной или нескольких партиций

  • обрабатывает их последовательно

Пример:

ConsumerRecords<String, String> records = consumer.poll(timeout);
for (ConsumerRecord<String, String> record : records) {
    // обработка
}

Почему батчи эффективнее

  • меньше сетевых вызовов

  • меньше переключений контекста

  • лучшая утилизация CPU

Что влияет на размер батча

  • настройки consumer’а

  • скорость обработки

  • задержки (latency)

Вывод

Kafka читает сообщения батчами, и это ключевая причина её высокой производительности.

Уровень

  • Рейтинг:

    4

  • Сложность:

    6

Навыки

  • Kafka

    Kafka

Ключевые слова

#consumer

#batch

Подпишись на Java Developer в телеграм