Встречается на собеседованиях • сегодня
Как гарантируется, что сообщение не обработается дважды в Kafka
В Kafka гарантия однократной обработки (exactly-once) достигается комбинацией механизмов:
- Идемпотентность продюсера
Позволяет избежать дублирования сообщений при ретраях:javaprops.put("enable.idempotence", "true");
-
Транзакции
Атомарные операции "прочитал-обработал-записал":javaproducer.initTransactions(); producer.beginTransaction(); producer.send(record); producer.commitTransaction(); -
Read-Process-Write цикл
Оффсеты хранятся в той же транзакции, что и выходные данные.
Нюансы:
- Требует Kafka ≥ 0.11
- Увеличивает накладные расходы
- Работает только в рамках одного приложения
- Для распределенных систем нужны дополнительные механизмы (например, двухфазные коммиты)

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