Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Раздача больших файлов при помощи nginx
В сообщении от Friday 28 November 2008 11:59:47 Igor Sysoev написал(а):
> On Fri, Nov 28, 2008 at 11:41:05AM +0300, Volkov Oleg wrote:
> > Задача заключается в раздаче по http больших файлов. Запросы к файлам по
> > 1 мегабайту (сами файлы порядка гигабайта).
> > Можно ли заставить nginx читать с диска весь запрос целиком (1 Мб),
> > кэшировать в оперативке а потом раздавать? При стандартных параметрах
> > скорость (по сравнению с линейным чтением) резко падает уже при 20
> > коннектах.
> >
> > Все это планируется крутить на ОС Linux. Пробовал включать/выключать
> > sendfile, на скорость не влияло.
>
> Можно
>
> sendfile off;
> output_buffers 1 1m;
>
> только память быстро кончится - и у процессов, и в ядре на буферы сокетов.
Это не помогает. output_buffers пробовал делать больше - все равно.
Сейчас работаю с одним массивом iscsi - при 2 и более воркерах скорость
меньше, чем при 1 воркере. Ядер на машине 8 штук.
Пробовал крутить некоторые параметры ядра
http://www.ibm.com/developerworks/ru/library/l-hisock/index.html
пока резуоттата не добился. Максимум получается 20 Мегабайт в секунду. Это при
большом количестве одновременных потоков. Если качать в один поток - скорость
в 2-3 раза больше.
Пробую все это на Centos 5
--
С уважением,
Волков Олег.
Терабит Телеком.
|