Реклама на сайте Advertise with us

Nginx - только что поставил

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

show me the money

С нами с 18.02.03
Сообщения: 1598
Рейтинг: 263

Ссылка на сообщениеДобавлено: 04/09/10 в 19:32       Ответить с цитатойцитата 

На сервере чисто для статики заменил Apache на nginx. Страницы со множеством картинок стали грузиться заметно быстрее.

Но вот вопрос. Сервер в некоторые дни испытавает нагрузку в N * 100,000 посетителей в день, и все они что-то грузят. Необходимо настроить конфиг nginx чтобы он не "загнулся".
Как я понял, основные параметры это: worker_processes (1) и worker_connections (1024). На одном сайте прочитал, что worker_processes * worker_connections = макс. число соединений.
Так ли это? Какие числа для этих параметров посоветуете? Что еще можно подправить?

0
 



С нами с 16.07.06
Сообщения: 886
Рейтинг: 892

Ссылка на сообщениеДобавлено: 04/09/10 в 22:37       Ответить с цитатойцитата 

Поздравляю с открытием (велосипеда) nginx, тоже ссал кипятком, когда его установил ;)

Советую все-таки еще поставить nginx и как прокси для apache - даже так существенно сократит нагрузку на сервер.

Я давно пытался свой nginx настроить на одном из серверов, копал кучу инфы, мануалы, howto итд. Сейчас уже не помню какая настройка детально что делает.
Может чего пригодится из этого:

Код:

worker_processes  4; # столько ядер на сервере, читал где-то что так лучше
worker_priority  -5; # приоритет процесса
pid             /var/run/nginx.pid;
timer_resolution        100ms;  # Уменьшает число системных вызовов gettimeofday(), что приводит к увеличению производительности
worker_rlimit_nofile    8192;   # Изменяет ограничение на число используемых файлов RLIMIT_NOFILE для рабочего процесса.

events {
    worker_connections  8192;
    use kqueue;         # use [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; kqueue good for freebsd

}
http {
        sendfile                        on;     # Использование sendfile() экономит системные вызовы, уменьшает число копирований данных, сжирает меньше памяти.
        tcp_nopush                      on;     # разрешает или запрещает использовать опции TCP_NOPUSH во FreeBSD
        tcp_nodelay                     on;
        ignore_invalid_headers          on;

        server_tokens                   off;    # не показывать свою версию

        reset_timedout_connection       on;     # надо узнать
        client_header_timeout           30s;    # таймаут при чтении заголовка запроса клиента
        client_body_timeout             30s;    # таймаут при чтении тела запроса клиента
        send_timeout                    30s;    # таймаут при передаче ответа клиенту
        keepalive_timeout               50 50;  # таймаут, в течение которого keep-alive соединение с клиентом не будет закрыто со стороны сервера

#       resolver                        127.0.0.1;
        resolver_timeout                5s;

        connection_pool_size            256;
        client_header_buffer_size       8k;     # размер буфера для чтения заголовка запроса клиента
        large_client_header_buffers     100 8k; # максимальное число и размер буферов для чтения большого заголовка запроса клиента
        request_pool_size               4k;
        client_max_body_size            2m;     # (1m) ограничить размер upload_файла
        proxy_buffering                 on;
        proxy_buffer_size               4k;
        proxy_buffers                   4 32k;
        proxy_busy_buffers_size         64k;
        proxy_temp_file_write_size      64k;
        proxy_read_timeout              120;    # таймаут при чтении ответа проксированного сервера, сек
        proxy_connect_timeout           90;     # таймаут для соединения с проксированным сервером, сек
        proxy_send_timeout              90;     # таймаут при передаче запроса проксированному серверу, сек
        proxy_ignore_client_abort       off;
        proxy_intercept_errors          off;

        gzip                            on;     # доступен при доп. модуле
        gzip_buffers                    64 8k;
        #gzip_http_version              1.1;
        gzip_http_version               1.0;
        gzip_comp_level                 5;      # max-9, лучшие значения между 4 и 5
        gzip_disable                    "MSIE 5\.[0-9]+";
        gzip_min_length                 1024;   # не сжимать файлы менее 1КБ
        gzip_proxied                    any;
        gzip_types text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript application/css;

        output_buffers                  4 32k;
        postpone_output                 1460;

        #limit_conn one 10;     # разрешить для 1 юзера 10 коннектов, нужен модуль ngx_http_limit_zone_module
        limit_rate      128k;   # (128K*8=1024kbit/s) ;KBytes/sec скорость для 1 коннекта. 1 юзер может создавать несколько одновременных коннектов
        #set $limit_rate 1k;    # задать скорость на уровне server {}


...
дальше идут домены
...
}

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »