Что происходит при распределении партиций между тремя потоками и тремя партициями в Kafka?

Если это три consumers одной группы и все подписаны на topic из трёх партиций, обычно каждому назначают одну партицию. Три рабочих потока сами по себе такого назначения не создают.

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

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

Если это три consumers одной группы и все подписаны на topic из трёх партиций, обычно каждому назначают одну партицию. Три рабочих потока сами по себе такого назначения не создают.

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

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

Если это три consumers одной группы и все подписаны на topic из трёх партиций, обычно каждому назначают одну партицию. Три рабочих потока сами по себе такого назначения не создают.

Kafka распределяет партиции между членами consumer group, а не произвольными потоками приложения. Одна партиция в рамках группы назначена одному consumer в текущем поколении. При входе, выходе или сбое участника возможен rebalance. Дополнительная обработка в thread pool требует самостоятельного контроля порядка и подтверждения offsets. Если consumers принадлежат разным группам, каждая группа читает собственный поток. Поэтому в ответе важно уточнить конфигурацию клиентов и подписок.

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

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

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

Подробнее