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