2013-01-04 1 views
1

Я ищу в реализации сервера HTTP изображения в Нетти и мне было интересно, что оптимальный Отправить Размер буфера должен быть:Оптимальная настройка для передачи сокета буфера для передачи файлов изображений на Нетти

ie. bootstrap.setOption("sendBufferSize", 1048576); 

Я прочитайте How to write a high performance Netty Client, но мне было интересно, каковы последствия установки слишком большого или слишком большого значения.

Изображения, которые я обслуживаю, составляют в основном около 100K до 5MB (avg 1MB). Я думаю, что большое значение (1 МБ) приведет к тому, что память ОС будет заполнена данными с буферизацией TCP, но есть ли ограничение производительности при установке небольшого значения (т. Е. 8192 КБ)?

+0

Основной ответ: «Чем больше, тем лучше», но обратите внимание, что буфер приема сокета приемника должен быть как минимум столь же большим, чтобы получить какую-либо выгоду вообще, и обратите внимание на оговорку в ответе @ TrustinLee. – EJP

+0

@EJP это из-за характера или спецификации TCP/IP? Согласованы ли размеры буфера при запуске соединения и что отправитель будет отображать нижнюю часть настроек размера буфера или размера буфера приемника? – user1941747

+0

Эти буферы используются для реализации TCP-окон. Получатель рекламирует текущий объем комнаты в своем буфере приема с каждым ACK. – EJP

ответ

1

Возможно, вы найдете this article.

Возможно, вам также понадобится настроить размер размера буфера приемника. В этом случае убедитесь, что вы установили его в гнездо сервера. В противном случае у вас будет 64KiB.

+0

Спасибо Trustin! В статье дается схема расчета параметров буфера. Похоже, что «оптимальная» настройка не зависит от моей полезной нагрузки - и зависит от того, сколько у вас RAM и ожиданий трафика. Я предполагаю, что вы имеете в виду клиента (т. Е. Браузер?). В моем случае у меня нет контроля над этим, поэтому его бессмысленно устанавливать его выше 64 КБ? – user1941747

+0

Я думаю, вы можете просто предположить значения по умолчанию для браузеров, которые используют ваши пользователи, и начать тестирование с этим значением. – trustin

+0

@trustin, ссылка этой статьи больше не работает. У вас есть альтернативная ссылка? –

 Смежные вопросы

  • Нет связанных вопросов^_^