<HTML><BODY>Добрый день!<br><br>ИмеетÑÑ Ñервер freebsd 9.2 amd64, 16gb ram, gmirror 2.7Tb x 2, nginx 1.4.2<br><br>За Nginx Ñтоит php-fpm на котором работает Ñайт, Ñредне нагруженный(1-10 запроÑ/Ñек). Кроме того, nginx через прокÑирование другого хоÑта отдает Ñтатику, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ñ‚Ð°ÐºÐ¸Ð¼ образом, предÑтавлÑет Ñобой динамичеÑки накоплÑемый кеш. Т.е. приходит запроÑ, nginx Ñмотрит наличие Ñтатики в кеше, еÑли нет получает ее Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð³Ð¾ хоÑта, отдает ответ.<br><br>Ð’ данный момент в таком кеше порÑдка 700к файлов, вÑе они размером примерно от 10кб до 100кб, общий размер данных в кеше 10gb.<br>Проблема в том, что периодичеÑки, раз в 10-20 Ñекунд nginx подгружает диÑк запиÑью на 2-5 Ñекунды, изза Ñтого ÑлучаетÑÑ Ð»Ð°Ð³ и например ответ от веб Ñервера можно ждать неÑколько Ñекунд. Отчет gstat:<br><br> L(q) ops/s r/s kBps ms/r w/s kBps ms/w %busy Name<br> 0 55 8 120 2689 47 903 4952 91.4| ada0<br> 12 36 4 68 2652 32 659 5418 96.4| ada1<br> 12 51 12 188 2676 39 855 5410 108.2| mirror/gm<br><br>ЕÑли отключить в nginx работу Ñо Ñтатикой через такое прокÑирование и отдавать ее мимо nginx, то такое поведение пропадает - диÑк никто периодичеÑки не наÑилует.<br> Вот конфиг:<br><br>user web;<br>worker_processes 8;<br><br>events {<br> worker_connections 1024;<br>}<br><br>http {<br> include mime.types;<br> default_type application/octet-stream;<br> sendfile on;<br> tcp_nopush on;<br> keepalive_timeout 65;<br> gzip on;<br> gzip_disable "msie6";<br><br> proxy_cache_path /var/www/cache/static levels=2:2 keys_zone=cachearea:3000m max_size=1000000m inactive=1y;<br> proxy_temp_path /var/www/cache/tmp;<br> include /usr/local/etc/nginx/conf.d/*.conf;<br>}<br><br>server {<br> listen 80;<br><br> server_name www.domain.com;<br> root /var/www/domain/public;<br><br> access_log /var/log/domain-access_log;<br> error_log /var/log/domain-error_log warn;<br><br> sendfile off;<br> aio on;<br><br> client_max_body_size 100m;<br> client_body_buffer_size 128k;<br><br> location / {<br> index index.html index.php;<br> try_files $uri $uri/ /index.php$is_args$args;<br> }<br><br> location ~* /static/(?<chosturi>.*)$ {<br> expires max;<br><br> resolver 8.8.8.8;<br> proxy_pass http://proxydomain.com/$chosturi?$query_string;<br> proxy_cache cachearea;<br> proxy_cache_key $chosturi;<br> proxy_cache_valid 404 301 302 500 502 503 1h;<br> proxy_cache_valid 200 204 10y;<br> }<br><br> location ~ /index\.php$ {<br> include fastcgi_params;<br> fastcgi_pass 127.0.0.1:9000;<br> fastcgi_index index.php;<br> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;<br> }<br>}<br><br>СобÑтвенно Ð²Ð¾Ð¿Ñ€Ð¾Ñ Ð² том как избавитÑÑ Ð¾Ñ‚ таких периодичеÑких нагрузок на диÑк.<br>СпаÑибо.<br><br>-- <br>Петр<br></BODY></HTML>