nginx есть проц

Kostya Alexandrov koticka at mail.ru
Tue Nov 13 17:42:56 MSK 2007


А можно еще
netstat -n -a
vmstat 5

как совет:
попробовать
        proxy_buffering off;
если файлы большие, то ngnix ,будет перекладывать контент в буфер в 
памяти, когда закончится на диск, и только когда примет от бекенда все 
тогда начнет выплевывать.

Nick S. Knutov wrote:
>
> Приветствую,
>
>
> Есть вдс, ей дано очень много ресурсов. nginx ест проц.
>
> OpenVZ, 2.6.18-8.1.8.el5.028stab039.1, failcnt нету, памяти, проца - 
> достаточно.
>
>
>   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
>
> 31986 nobody    17   0  4904 3472  692 R   40  0.2   4:50.57 nginx
>
> 13398 nobody    17   0  4840 3400  692 R   39  0.2   1:19.98 nginx
>
>
> Было на 0.5.31, не исчезло после обновления до 0.5.33.
>
> Вероятнее всего в это время nginx отдает проксированные ответы апача, 
> который получает их от пхп скрипта. Пхп скрипт, вероятнее всего, 
> отдает 3х мегабайтные файлы с диска. Про интернал редиректы я в курсе, 
> но скрипты не мои и править нельзя. Да и nginx независимо от, по моему 
> мнению, не должен есть столько проца, скорее его должны бы есть те 
> скрипты, но с нагрузкой в два потока, по идее, не должны и они.
>
>
> Как искать причины ? Кусок конфига ниже.
>
>
> ========================
>
> user  nobody nogroup;
>
> worker_processes  1;
>
> pid /var/run/nginx.pid;
>
> error_log  /var/log/nginx.error_log  crit; # [ debug | info | notice | 
> warn | error | crit ]
>
> events {
>
>         worker_connections  2048;
>
>         use epoll; # use [ kqueue | rtsig | epoll | /dev/poll | select 
> | poll ];
>
> }
>
> http {
>
>        [...]
>         client_header_timeout  3m;
>
>         client_body_timeout    3m;
>
>         send_timeout           3m;
>
>         client_header_buffer_size    1k;
>
>         large_client_header_buffers  4 4k;
>
>         gzip             on;
>
>         gzip_min_length  500;
>
>         gzip_proxied     expired no-cache no-store private auth;
>
>         gzip_types       text/plain text/html text/css 
> application/x-javascript text/xml application/xml application/xml+rss 
> text/javascript;
>
>         gzip_comp_level 5;
>
>
>         output_buffers   1 32k;
>
>         postpone_output  1460;
>
>
>         sendfile        on;
>
>         tcp_nopush      on;
>
>         tcp_nodelay     on;
>
>         #keepalive_timeout  0;
>
>         keepalive_timeout  65 20;
>
>         server_names_hash_max_size      2048;
>
>         server_names_hash_bucket_size   64;
>
>         server {
>
>                 listen 80;
>
>                 server_name  ***.ru www.***.ru;
>
>                 location / {
>
>                         proxy_pass          http://127.0.0.1:81;
>
>                         proxy_set_header    X-Real-IP  $remote_addr;
>
>                         proxy_set_header    X-Forwarded-For 
>  $proxy_add_x_forwarded_for;
>
>                         proxy_set_header    X-Accel-Internal 
> /internal_xxx;
>
>                         proxy_set_header    Host $http_host;
>
>                 }
>
>                 location /internal_xxx/ {
>
>                         root        /home/admin/www/***.ru;
>
>                         rewrite   ^/internal_xxx/(.*)$ /$1 break;
>
>                         internal;
>
>                 }
>
>                 # Static files location
>
>                 location ~* 
> ^.+\..(swf|xml|gif|jpg|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js|ods|arj)$ 
> {
>
>                         root    /home/admin/www/***.ru;
>
>                 }
>
>         }
>
>
>
>
> -- 
>
> Best regards,
>
>  Nick                          mailto:mail at knutov.com
>





More information about the nginx-ru mailing list