Добавление партиций может изменить распределение ключей и нарушить порядок обработки событий одного ключа между старыми и новыми партициями.
У тебя есть Kafka-кластер с критичным потоком событий, например для назначения курьеров или оформления заказов. Консьюмер отстаёт, lag растёт, и в пике он не успевает обрабатывать сообщения. Ты решаешь добавить партиции и увеличить число консьюмеров. Что может пойти не так при добавлении партиций в уже работающий топик? Как настраивать автоскейлинг консьюмеров, по какой метрике и почему CPU — плохой выбор?
Добавление партиций может изменить распределение ключей и нарушить порядок обработки событий одного ключа между старыми и новыми партициями.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Добавление партиций может изменить распределение ключей и нарушить порядок обработки событий одного ключа между старыми и новыми партициями.
Старые записи не перераспределяются автоматически; rebalance, перекос нагрузки и рост нагрузки на брокеры тоже важны. Масштабируйте по lag, его возрасту и скорости обработки с cooldown, учитывая лимит параллелизма партициями. CPU не отражает ожидание внешних сервисов; если bottleneck в них, дополнительные consumers могут навредить.
Источник: Документация Apache Kafka.