Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: High periodic disk I/O
- To: "nginx-ru@xxxxxxxxx" <nginx-ru@xxxxxxxxx>
- Subject: Re: High periodic disk I/O
- From: Илья Шипицин <chipitsine@xxxxxxxxx>
- Date: Tue, 14 Jan 2014 22:10:43 +0600
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=1aNRXYlsY1qI3j1h0RklBFcp7RyjirvF/IG98z947nE=; b=C+TYdk2tmMt0GxxQS7eE+hbXi7KrzbWCUHFkTScJfOFqWXgM2yOxgANgGWsZ4I9WFn NkovzwiLr68KBJPCKpaKj2qBZcqOfSO5VRcnAV5AChe3d2PhEh3fKz7iG/JHG9mdKxlO /XZsZlot0Wol/R4FtkYc/oJlgw/JRnSHwNz4kqS+BtNUH9ERPCIi6VY/ChDXclprpb5g o9Y3fufYfLdPLPsO/BgnnAnAMEzZ2yLFrumC+LiAQrg82JrZTdAuLCi4HAt/h1g1cDd5 /1Pzbl8grrvgPf0HRx1Lv+iZqIwUCMBP0on7g5qcxalWiW0nuYlHPO1Jyu9hfLmsRvFl jaiw==
- In-reply-to: <1389707692.455114261@f30.i.mail.ru>
- References: <1389707692.455114261@f30.i.mail.ru>
в вашем случае будут две папки, куда будут падать файлы,
проксированные по http (статика) и fastcgi (динамика), посмотрите,
куда падает больше и крутите, соответственно fastcgi_buffers или
proxy_buffers
14 января 2014 г., 19:54 пользователь Петр Гузанов <gpskomsa@xxxxxxx> написал:
> Добрый день!
>
> Имеется сервер freebsd 9.2 amd64, 16gb ram, gmirror 2.7Tb x 2, nginx 1.4.2
>
> За Nginx стоит php-fpm на котором работает сайт, средне нагруженный(1-10
> запрос/сек). Кроме того, nginx через проксирование другого хоста отдает
> статику, которая таким образом, представляет собой динамически накопляемый
> кеш. Т.е. приходит запрос, nginx смотрит наличие статики в кеше, если нет
> получает ее с другого хоста, отдает ответ.
>
> В данный момент в таком кеше порядка 700к файлов, все они размером примерно
> от 10кб до 100кб, общий размер данных в кеше 10gb.
> Проблема в том, что периодически, раз в 10-20 секунд nginx подгружает диск
> записью на 2-5 секунды, изза этого случается лаг и например ответ от веб
> сервера можно ждать несколько секунд. Отчет gstat:
>
> L(q) ops/s r/s kBps ms/r w/s kBps ms/w %busy Name
> 0 55 8 120 2689 47 903 4952 91.4| ada0
> 12 36 4 68 2652 32 659 5418 96.4| ada1
> 12 51 12 188 2676 39 855 5410 108.2| mirror/gm
>
> Если отключить в nginx работу со статикой через такое проксирование и
> отдавать ее мимо nginx, то такое поведение пропадает - диск никто
> периодически не насилует.
> Вот конфиг:
>
> user web;
> worker_processes 8;
>
> events {
> worker_connections 1024;
> }
>
> http {
> include mime.types;
> default_type application/octet-stream;
> sendfile on;
> tcp_nopush on;
> keepalive_timeout 65;
> gzip on;
> gzip_disable "msie6";
>
> proxy_cache_path /var/www/cache/static levels=2:2
> keys_zone=cachearea:3000m max_size=1000000m inactive=1y;
> proxy_temp_path /var/www/cache/tmp;
> include /usr/local/etc/nginx/conf.d/*.conf;
> }
>
> server {
> listen 80;
>
> server_name www.domain.com;
> root /var/www/domain/public;
>
> access_log /var/log/domain-access_log;
> error_log /var/log/domain-error_log warn;
>
> sendfile off;
> aio on;
>
> client_max_body_size 100m;
> client_body_buffer_size 128k;
>
> location / {
> index index.html index.php;
> try_files $uri $uri/ /index.php$is_args$args;
> }
>
> location ~* /static/(?<chosturi>.*)$ {
> expires max;
>
> resolver 8.8.8.8;
> proxy_pass http://proxydomain.com/$chosturi?$query_string;
> proxy_cache cachearea;
> proxy_cache_key $chosturi;
> proxy_cache_valid 404 301 302 500 502 503 1h;
> proxy_cache_valid 200 204 10y;
> }
>
> location ~ /index\.php$ {
> include fastcgi_params;
> fastcgi_pass 127.0.0.1:9000;
> fastcgi_index index.php;
> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
> }
> }
>
> Собственно вопрос в том как избавится от таких периодических нагрузок на
> диск.
> Спасибо.
>
> --
> Петр
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@xxxxxxxxx
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|