если ваша логика пунктуатора работает медленно, как несколько минут, поток Kafka не будет потреблять новые сообщения от определенного раздела (на котором выполняется пунктуатор), пока пунктуатор не завершит выполнение. также долго работающий пунктуатор не должен вызывать перебалансировку (перебалансировка может произойти по другим причинам)
влияет ли пунктуатор в одном разделе на другие, зависит от того, запускаете ли вы приложение на одном узле или на нескольких, а также на свойстве num.stream.threads
, которое вы могли бы указать для Kafka Streams.
если ваше приложение работает на одном узле, поток Kafka будет использовать только один поток для всех разделов (по умолчанию num.stream.threads
равно 1). так что в этом случае пунктуатор на определенном разделе также блокирует все остальные разделы. но если у вас есть несколько экземпляров приложения и / или num.stream.threads
больше 1, если некоторые из пунктуаторов работают быстро, то такие разделы не будут затронуты длительными пунктуаторами в других разделах.