ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Раздача больших файлов при помощи nginx



В пт, 28/11/2008 в 16:03 +0300, Igor Sysoev пишет:
> On Fri, Nov 28, 2008 at 02:33:49PM +0200, MZ wrote:
> 
> > В пт, 28/11/2008 в 11:59 +0300, 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;
> > > 
> > > только память быстро кончится - и у процессов, и в ядре на буферы сокетов.
> > 
> > А чем-то отличается работа nginx для
> > output_buffers 1 64k;
> > и
> > output_buffers 2 32k;
> > ?
> > 
> > Меня интересует такой момент - для второго случая nginx мог бы, после
> > того как первый буффер в 32k весь записан в сокет, начать читать новый
> > 32k буффер, а второй 32k все ещё ждет своей очереди пока не появится
> > место в буффере сокета.
> 
> Да, вариант "2 32k" так и будет работать. Возможно, не так плавно, как
> хотелось бы (чтобы в памяти всегда был готов блок по 32К), но в целом, так.

Жаль что в документации не описано, весьма интересная возможность для
дополнительного тюнинга.


 




Copyright © Lexa Software, 1996-2009.