Мне интересно, есть ли разница в производительности между использованием
tcp_autocorking ядра Linux и пользовательское агрегирование в пользовательском пространстве.
У меня есть заголовок длины и данные (в среднем 120 байтов), которые мне нужно передать.
Вариант 1). Запишите длину и полезную нагрузку в двух отдельных системных вызовах.
Вариант 2). Суммируйте длину и полезную нагрузку в объединенном буфере и выполняйте только один системный вызов.
Я боюсь, что второй системный вызов из варианта 1) имеет штраф за производительность. С другой стороны, копирование полезной нагрузки без необходимости во второй буфер также может быть значительным дополнительным расходом.
Так какое решение, вероятно, быстрее?