Встречается на собеседованиях • сегодня
Что такое auto-commit в Kafka
Auto-commit в Kafka — это автоматическое подтверждение (commit) смещений (offsets) для потребителя (consumer). По умолчанию, если enable.auto.commit=true, Kafka автоматически фиксирует offsets через заданный интервал (auto.commit.interval.ms), обычно 5 секунд.
Проблемы:
- Потеря сообщений: Если consumer упал после обработки сообщения, но до auto-commit, Kafka считает сообщение обработанным и не переотправит его.
- Дублирование: Если consumer успел закоммитить offset, но не завершил обработку, Kafka повторно отправит уже обработанные сообщения.
Пример отключения auto-commit:
java
props.put("enable.auto.commit", "false");
// Ручной commit после обработки
consumer.commitSync();Когда использовать:
- Auto-commit подходит для простых сценариев, где допустима потеря или дублирование сообщений.
- Для гарантированной доставки лучше управлять commits вручную (
commitSync/commitAsync).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы