В Kafka есть топик с 10 партициями. Мы подняли ещё одну реплику консьюмера, но производительность не увеличилась. Почему и что делать?

В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.

Короткий ответ

Что ответить на собеседовании

В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.

Подробный разбор

Ответ с пояснениями

В обычной consumer group Kafka одновременно обрабатывать 10 партиций могут не более 10 назначенных consumers. Но даже до этого предела добавление экземпляра не помогает, если bottleneck вне чтения топика.

Проверьте group ID, назначение партиций и lag по каждой: горячая partition остаётся на одном consumer. Причиной могут быть медленная БД, ограниченный внешний API, CPU, batching или паузы rebalance. Сначала измеряют загрузку и время обработки, затем меняют ключ распределения, число партиций либо downstream. Увеличение партиций влияет на порядок и распределение ключей; его нельзя делать без оценки контракта.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее