Re: Большая дисперсия времени выполнения запросов
yury_y
nginx-forum at nginx.us
Tue Aug 19 15:20:35 UTC 2014
> каждый worker nginx - однопоточный, он блокируется на дисковых
> операциях
> и не может обрабатывать в этот момент другие запросы что пришли по
> сети.
>
> 1) может помочь увеличение количества worker`ов nginx
>
> 2) если OS FreeBSD - там можно попробовать aio режим для статики.
> на Linux aio режим пока что имеет смысл использовать только для очень
> больших файлов, которые в любом случае не помещаются в файловый кеш.
>
> 3) ускорить отдачу динамики можно, если, например, использовать
> два разных экземпляра nginx - для отдачи статики и динамики.
>
> 11.11.11.11:80 www.example.com - динамика, проксирование запросов
> 22.22.22.22:80 example.com - статика
>
> тот nginx, который работает для динамики -
> не будет блокироваться на дисковых операциях,
> а при работе с сетью worker`ы nginx не блокирутся.
>
> 4) добавить в сервер еще памяти, чтобы увеличился дисковый кеш
>
> 5) использовать SSD вместо HDD для всей отдаваемой сервером статики
>
> 6) если используются сторонние модули - причина может быть в них.
>
> 7) более точно узнать причину задержек поможет
> http://nginx.org/ru/docs/debugging_log.html
Спасибо за идеи.
1, 2, 3, 7 - попробую
4, 5 - там уже SSD и 32GB памяти
6 - из сторонних модулей только nginx-sla
С уважением,
Юрий
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,252669,252674#msg-252674
Подробная информация о списке рассылки nginx-ru