Kafka Streams фиксирует данные через регулярные интервалы, которые можно настроить с помощью параметра commit.interval.ms
(по умолчанию 30 секунд; если включена однократная обработка, по умолчанию 100 мс).
Обычно пользователям нет необходимости фиксировать их вручную. Обратите внимание, что пользователи не имеют полного контроля над фиксацией, а могут только запросить фиксацию: ср. Как сделать коммит вручную с Kafka Stream?
Коммиты - это точка синхронизации, и если вы делаете коммит слишком часто (например, после каждой обработанной записи), ваша пропускная способность может значительно снизиться. Это также сильно зависит от приложения, потому что частота фиксации определяет, сколько потенциальных дубликатов процессов приложения (это также зависит от скорости входных данных). Таким образом, вам нужно учитывать, сколько дубликатов в случае неудачи вы готовы терпеть. Это также зависит от того, сколько времени потребуется приложению для повторной обработки данных: в течение этого времени приложение может быть не полностью доступно. В целом, трудно дать рекомендацию, и вам необходимо учитывать описанные компромиссы для каждого приложения в отдельности.