Что нужно сделать на консюмере для exactly-once?

Exactly-once требует атомарности результата и отметки об обработке либо идемпотентного эффекта. Одного ручного commit offset недостаточно.

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

Что ответить на собеседовании

Exactly-once требует атомарности результата и отметки об обработке либо идемпотентного эффекта. Одного ручного commit offset недостаточно.

Подробный разбор

Ответ с пояснениями

Exactly-once требует атомарности результата и отметки об обработке либо идемпотентного эффекта. Одного ручного commit offset недостаточно.

Если эффект записывается в БД, используйте уникальный идентификатор события и транзакцию: проверка/фиксация обработки вместе с бизнес-изменением. Offset подтверждают после успешной записи; повторная доставка тогда безопасна. Для Kafka-to-Kafka возможна транзакционная связка выходных сообщений и offsets, а внешняя БД в такую транзакцию автоматически не входит. Нужно определить границу гарантии, а не обещать отсутствие повторных доставок.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее