Gymterview
junior

Для чего нужны методы commitSync() и commitAsync()?

Эти методы используются для фиксации (commit) смещений потребителя.

Метод Поведение Плюсы Минусы
commitSync() Синхронная фиксация; повторяет попытки до успеха или неисправимой ошибки Надёжный — offset точно зафиксирован Блокирует поток, снижает throughput
commitAsync() Асинхронная фиксация; не повторяет попытку при сбое Быстрый, не блокирует Менее надёжный — offset может не зафиксироваться

На собеседовании: распространённый паттерн — использовать commitAsync() в основном цикле (для скорости) и commitSync() в блоке finally перед закрытием потребителя (для надёжности последнего коммита).