Клиент Kafka использует org.apache.kafka.common.requests.ProduceRequest
, который может переносить полезные нагрузки для нескольких разделов одновременно (см. http://kafka.apache.org/protocol.html#The_Messages_Produce).
Таким образом, он отправляет (используя org.apache.kafka.clients.NetworkClient
) три параллельных запроса каждому из (трех) посредников, т. Е .:
- sends records for topic-partition0, topic-partition1, topic-partition2 to broker 1
- sends records for topic-partition3, topic-partition4, topic-partition5 to broker 2
- sends records for topic-partition6, topic-partition7, topic-partition8 to broker 3
Вы можете контролировать объем дозирования с помощью конфигурации производителя.
(обратите внимание, что я ответил с 9 уникальными разделами, если вы имели в виду реплицированные разделы, вы отправляете только лидеру - тогда репликация будет обрабатывать распространение).