После короткого пребывания в буфере сокета приема запрос подхватывается доступным сетевым потоком из пула. Сетевой поток, который подхватывает входящий запрос, будет обрабатывать его в течение всего его жизненного цикла. Сперва сетевой поток должен прочитать запрос из буфера сокета приема, сформировать его в объект запроса produce и добавить его в очередь запросов. Конфигурация num.network.threads определяет, сколько сетевых потоков будет работать в этот момент. По умолчанию она равна 3, а верхняя граница обычно соответствует количеству ядер, доступных на сервере. Отслеживать эти потоки поможет метрика NetworkProcessorAvgIdlePercent, значения которой варьируются от 0, когда потоки полностью загружены до 1, т.е. потоки не заняты. Желательно, чтобы значение метрики NetworkProcessorAvgIdlePercent было ближе к 1, когда потоки не слишком загружены.