Вы передаете слишком мало байтов в каждом вызове к send
или write
. Необходимо попытаться передать по крайней мере 2 КБ за вызов, или лучше, 4 КБ за вызов. Если возможно, накопите все логическое сообщение и отправьте его сразу. Это будет сохранять системные вызовы, упаковывать Ваши пакеты более эффективно и препятствовать, задержал ACK уничтожить Вашу задержку.
Согласно настройке Linux: экспертное руководство от базы знаний производительности сети ESnet:
Примечание: Кажется, существуют ошибки и в контроллере магистрального интерфейса и в кубические для многих версий 2.6.18 ядер, используемых Redhat Enterprise Linux 5.3 - 5.5 и его варианты (Centos, Научный Linux, и т.д.) Мы рекомендуем использовать htcp с 2.6.18.x ядро для сейфа.
Я не мог найти детали о тех контроллером магистрального интерфейса или кубическими ошибками на базе данных ошибки Red Hat или больше нигде, таким образом, нет никакого доказательства, что это - фактический ответ.