ПРОЕКТЫ 


  АРХИВ 


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: Re[7]: Использование nginx для отдачи больших файлов



Другое дело, что, как показывает опыт, выше головы не прыгнешь и если
все упирается в диски, то настройками nginx (и вообще настройками)
делу особо не поможешь - надо улучшать дисковую подсистему или ставить
еще сервер и переводить часть нагрузки на него. Это и проще и лучше и
дешевле.

Снижение average output в peak time, как мне кажется, связано с тем,
что увеличивается количество пользователей/сессий; как результат -
повышается общее количество файлов, которые запрашиваются и
уменьшается среднее количество байт, передаваемое 1-му клиенту в 1-у
секунду; как результат - чтение с дисков происходит меньшими кусками,
а "кусков" больше, то есть производительность дисковой подсистемы
заметно снижается за счет более фрагментарного чтения.

При этом, понятно, чем быстрее снижается производительность дисков,
тем сильнее начинают действовать факторы, описанные выше. И дальше -
по кругу.

Решение - в сериализации операций чтения, NCQ/TCQ, сокращении набора
файлов, сокращения количество одновременных сессий и так далее. Я, при
достижении плановой нагрузки на сервер (70% в iowait), ставлю рядом
еще один и не морочу себе голову :)

On 2/16/07, drmarker <drmarker@xxxxxxxxx> wrote:
А зачем столько workers? Лучше сделать 1-2-3, чтобы они друг-друга
меньше блокировали. И keepalive для этой задачи, наверное, тоже совсем
не нужен?

Использование perl не мешает использованию sendfile?

On 2/16/07, Igor Savchenko <dicsydel@xxxxxxxxx> wrote:
> Hello AleXXX,
>
> Friday, February 16, 2007, 11:04:26 AM, you wrote:
>
> > On Fri, 16 Feb 2007 10:44:34 +0200
> > Igor Savchenko <dicsydel@xxxxxxxxx> wrote:
>
> IS>> Hello AleXXX,
> IS>>
> IS>> В дополнение... Какие оптимальные параметры нужны для отдачи файлов
> IS>> размером 10кб до 60мб которые находятся на 4ТБ массиве?
> IS>> Канал 100MBit/s.
> IS>>
> IS>> В течение дня все окей.. канал загружен практически полностью все
> IS>> отлично. Но вечером после 16 часов и заканчивая полуночью... Авераж
> IS>> аутбоунд равен 2-10 Мбит/с. При всем этом LA выше 1 не поднимается.
> IS>> Где можно покопать?
>
> > а провайдер точно вас не шейпит?
> > как раз у меня после 16 часов поток резко возрастает....
> > а в час-два ночи спадает....
>
> Нет, не шейпит. Сейчас конфиг такой:
>
> worker_processes  20;
>
> events {
>     worker_connections  512;
> }
>
>
> http {
>     include       conf/mime.types;
>     default_type  application/octet-stream;
>
>     log_format  main  '$remote_addr - $remote_user [$time_local] $status '
>                       '"$request" $body_bytes_sent "$http_referer" '
>                       '"$http_user_agent" "$http_x_forwarded_for" 
"$sent_http_content_length"';
>
>     access_log off;
>
>     sendfile        on;
>     keepalive_timeout  20;
>
>     perl_modules  perl/lib;
>     perl_require  rewrite.pm;
>
>     server {
>         listen       xxx.xxx.xxx.xxx:80;
>         location / {
>            perl rewrite::handler;
>         }
>     }
> }
>
>
> ---------------------------------
> Igor V. Savchenko
>
> http://webta.net
>
> mailto: igor@xxxxxxxxx
> ICQ: 86915046
>
>
>



 




Copyright © Lexa Software, 1996-2009.