В classic protocol Range, RoundRobin и Sticky используют eager-перераспределение, а CooperativeSticky старается сохранить назначения и отзывать только перемещаемые partition. Это уменьшает остановку полезной обработки.
От каких алгоритмов назначения партиций зависит время ребалансировки consumer group Kafka? В чём преимущество CooperativeStickyAssignor?
В classic protocol Range, RoundRobin и Sticky используют eager-перераспределение, а CooperativeSticky старается сохранить назначения и отзывать только перемещаемые partition. Это уменьшает остановку полезной обработки.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В classic protocol Range, RoundRobin и Sticky используют eager-перераспределение, а CooperativeSticky старается сохранить назначения и отзывать только перемещаемые partition. Это уменьшает остановку полезной обработки.
Время rebalance зависит также от числа участников, обнаружения отказа, callbacks и скорости освобождения partition. Cooperative не означает отсутствие повторных раундов или нулевую задержку. Все участники должны поддерживать согласованный протокол, поэтому переход планируют совместимо. В новом consumer rebalance protocol используются серверные assignors: настройки classic-клиентского CooperativeSticky нельзя переносить туда буквально.
Источник: Документация Apache Kafka, github.com.