В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.
В Kafka есть топик с 10 партициями. Мы подняли ещё одну реплику консьюмера, но производительность не увеличилась. Почему и что делать?
В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.
Проверьте group ID, назначение партиций и lag по каждой: горячая partition остаётся на одном consumer. Причиной могут быть медленная БД, ограниченный внешний API, CPU, batching или паузы rebalance. Сначала измеряют загрузку и время обработки, затем меняют ключ распределения, число партиций либо downstream. Увеличение партиций влияет на порядок и распределение ключей; его нельзя делать без оценки контракта.