В Kafka количество консьюмеров в consumer group и количество партиций топика связаны напрямую с тем, как распределяются сообщения.
Как consumer распределяются по partition: каждый consumer подключается к каждой partition или нет?
В Kafka количество консьюмеров в consumer group и количество партиций топика связаны напрямую с тем, как распределяются сообщения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В Kafka количество консьюмеров в consumer group и количество партиций топика связаны напрямую с тем, как распределяются сообщения.
Если у вас 10 партиций и 100 консьюмеров в одной группе, то:
- Каждая партиция может быть назначена только одному консьюмеру из группы.
- Поскольку партиций меньше, чем консьюмеров, то только 10 консьюмеров будут активны и получать данные.
- Остальные 90 консьюмеров будут простаивать, так как им не будет назначено ни одной партиции.
Итог: максимальное количество активных консьюмеров в группе равно количеству партиций. Избыточное количество консьюмеров не увеличит параллелизм, а лишь создаст неиспользуемые экземпляры.