Sobes.tech
Назад к вопросам
Senior
8

Kafka: топик с 3 партициями и 2 консюмера в одной группе — как распределится чтение?

Компании, где спрашивали
SSP Soft

Ответ от нейросети

sobes.tech AI

В Kafka партиции топика распределяются между консюмерами внутри одной группы так, чтобы каждая партиция читалась ровно одним консюмером из этой группы. При топике с 3 партициями и 2 консюмерами в группе распределение будет примерно таким:

  • Один консюмер получит 2 партиции
  • Второй консюмер получит 1 партицию

Это связано с тем, что количество партиций больше количества консюмеров, и Kafka пытается распределить партиции максимально равномерно. Если бы консюмеров было больше или равно количеству партиций, то некоторые консюмеры могли бы не получать данных.

Пример распределения:

Консюмер Партиции
Consumer 1 0, 1
Consumer 2 2

Таким образом, чтение будет параллельным, но каждая партиция будет читаться только одним консюмером, что обеспечивает упорядоченность сообщений внутри партиции.