Предположим, что существует только одна тема с 20 разделами и одна группа потребителей только с одним экземпляром потребителя, который потребляет из этой темы.
Если этот экземпляр потребителя имеет 20 потоков, после перебалансировки Kafka назначит каждый разделк одному потоку, и это идеально (один поток к одному разделу)
Но на этом этапе;что произойдет, если к этой группе потребителей добавится еще один экземпляр потребителя с 20 потоками?
Полагаю, варианты будут такими:
1 - перебалансировка не произойдет, а второй потребитель останется в режиме ожиданиягосударство.(Поскольку 20 потоков уже достаточно для 20 разделов)
2 - происходит перебалансировка, и 10 разделов назначаются первому потребителю, а остальные 10 разделов назначаются второму потребителю.(10 потоков для каждого потребителя будут простаивать)
На самом деле второй вариант более идеален, я думаю.Потому что мы разделили работу, добавив еще один экземпляр.
Так какой сценарий произойдет в этой ситуации?Может ли Кафка с этим справиться гладко?Или добавление другого экземпляра - просто трата?
Редактировать: я использовал слово "экземпляр" в качестве экземпляра микросервиса, а не экземпляр KafkaConsumer.