Есть ли доступный архив списка расылки?

Kpoxa KpoIIIkin kpoxa at kpoxa.net
Wed Jan 5 19:51:20 MSK 2005


Добрый день.

>>1.Предполагается использовать nginx  в качестве фронт энда на
>>виртуальном хостинге,
>>число виртуальных хостов может измеряться тысячами, все запросы,
>>приходящие на
>>1 определенный адрес:порт надо перенаправить на другой определенный
>>адрес:порт,
>>при этом заголовок host оставив изначальными, как это указать nginx'у?
>>    
>>
>
>proxy_preserve_host  [on|off];
>
ТраблеРепорт:
Система Linux, debian woody, ядро 2.4.27-1, процессор iP4 3000, памяти 2 
гига, ide hdd 80 Gb
Посторонних задач нет.
nginx  0.1.13
./configure \
    --prefix=/usr/local                         \
    --conf-path=/etc/nginx/nginx.conf           \
    --pid-path=/var/run/nginx.pid               \
    --error-log-path=/var/log/nginx/error.log   \
    --http-log-path=/var/log/nginx/access.log   \
    --user=www-data                             \
    --group=www-data

Ниже привожу полный конфиг.

При включении проксирования всех запросов через nginx через него 
проходит траффик
примерно 35 мегабит, около 600 запросов в секунду. nginx затыкается и 
начинает говорить что
коннекта к бэкенду нет и при этом есть 100% процессора, причем 99% в 
режиме системы.
При отключении прохода через него "длинных файлов" траффик падает до ~15 
мегабит/сек, число запросов уменьшается не значительно (на 10 в 
секунду), но nginx ведет себя значительно более стабильно.
Потребление процессора при этом не доходит до 10%, в среднем около 7%.

Как определить, в чем может быть причина проблемы?
----------------- nginx.conf ------------------
worker_processes  2;

#error_log  logs/error.log;
#pid        logs/nginx.pid;


events {
    connections  10240;
}


http {
    include       /etc/nginx/nginx.mime.types;
    default_type  application/octet-stream;

    log_format main      '%addr - - [%time] "%request" %status '
                         '%length "%{Referer}i" "%{User-Agent}i" '
                         '"%proxy" "%gzip_ratio"';

    log_format download  '%addr - - [%time] "%request" %status '
                         '%length "%{Referer}i" "%{User-Agent}i" '
                         '"%{Range}i" "%{Content-Range}o"';


    post_accept_timeout    60;
    client_header_timeout  3m;
    client_body_timeout    3m;
    send_timeout           3m;

    connection_pool_size                256;
    client_header_buffer_size           1k;
    large_client_header_buffers         4 2k;
    request_pool_size                   4k;

    output_buffers                      8 32k;
    postpone_output                     1460;

    sendfile         on;
    tcp_nopush       on;

            client_max_body_size       16m;
            client_body_buffer_size    128k;

            proxy_connect_timeout      90;
            proxy_send_timeout         90;
            proxy_read_timeout         90;

            proxy_preserve_host        on;
            proxy_set_x_real_ip        on;
            proxy_add_x_forwarded_for  on;

            proxy_header_buffer_size   4k;
            proxy_buffers              8 32k;
            proxy_busy_buffers_size    128k;
            proxy_temp_file_write_size 128k;

            proxy_temp_path            /var/lib/nginx;


    #
    server {
        listen        801;
        location / {
            proxy_pass  http://192.168.0.66/;
            access_log   /var/log/nginx/be1.log  main;
        }
    }
    #
    server {
        listen        802;
        location / {
            proxy_pass  http://192.168.0.67/;
            access_log   /var/log/nginx/be2.log  main;
        }
    }
    #
    server {
        listen        803;
        location / {
            proxy_pass  http://192.168.0.68/;
            access_log   /var/log/nginx/be3.log  main;
        }
    }
    #
    server {
        listen        804;
        location / {
            proxy_pass  http://192.168.0.69/;
            access_log   /var/log/nginx/be4.log  main;
        }
    }
    #
    server {
        listen        805;
        location / {
            proxy_pass  http://192.168.0.70/;
            access_log   /var/log/nginx/be5.log  main;
        }
    }
    #
    server {
        listen        806;
        location / {
            proxy_pass  http://192.168.0.71/;
            access_log   /var/log/nginx/be6.log  main;
        }
    }
    #
    server {
        listen        807;
        location / {
            proxy_pass  http://192.168.0.72/;
            access_log   /var/log/nginx/be7.log  main;
        }
    }
}

----------------------------------------------






More information about the nginx-ru mailing list