Для чтения, обработки и записи внутри Kafka результат и смещения потребителя можно фиксировать в одной транзакции.
Можешь рассказать, как ты организовывал exactly-once доставку сообщений по Kafka?
Для чтения, обработки и записи внутри Kafka результат и смещения потребителя можно фиксировать в одной транзакции.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Для чтения, обработки и записи внутри Kafka результат и смещения потребителя можно фиксировать в одной транзакции.
Потребители результата используют read_committed; обычный отдельный commit смещения не даёт такой атомарности. Запись во внешнюю БД требует отдельного согласования или идемпотентности: транзакция Kafka автоматически её не охватывает. Документация Kafka.