Алексей Малов
February 18, 2011 03:46AM
> Как можно средствами nginx ограничить количество запросов с одного допустим ip к сервер
http://sysoev.ru/nginx/docs/http/ngx_http_limit_req_module.html

И в апаче лучше ограничить количество воркеров так, чтобы даже когда
их максимум, сам сервер не падал.


18 февраля 2011 г. 0:16 пользователь Александр Рочев <foxr@mail.ru> написал:
> Доброй ночи всем.
> Сегодня случайным образом выявилась большая проблема на сайте. Случайно зажав кнопку F5 в админке сайта получилось заставить сервер впасть в ступор, в top появилась куча httpd процессов, нагрузка на процессор 100% и сайт перестает отвечать (404 ошибка).
> Еще так же в админке есть пункт меню, в которых заходя идет запрос на второй сервер, с которого ему присылаются данные и попадают во фрейм. Так вот если на этой странице нажать F5 и держать, то снова возникает тьма процессов httpd, которые жрут 100% проца, но уже nginx отвечает на сайте 504 ошибку.
>
> Как можно средствами nginx ограничить количество запросов с одного допустим ip к серверу или может в конфиге ошибка, которая так кладет сайт. Пробовал на разных сайтах держать F5 им хоть бы что. Кто может сталкивался с такой проблемой, помогите, не радует что может сделать F5 с сайтом....
>
> Сервер 6 ядерный, памяти 32гб и рэйд 5 на скази дисках.
> Работает связка nginx 0.8.5.4 + apache
>
> Настройки Апача
> <IfModule mpm_prefork_module>
>    StartServers          10
>    MinSpareServers       15
>    MaxSpareServers      30
>    MaxClients          150
>    MaxRequestsPerChild   0
> </IfModule>
> Timeout 60
> KeepAlive Off
> MaxKeepAliveRequests 100
> KeepAliveTimeout 5
>
> user  www www;
>
> worker_processes  8;
>
> error_log  /pub/log/nginx/error_log  notice;
>
> pid        /var/run/nginx.pid;
>
> events {
>    worker_connections  1024;
>    use kqueue;
>        }
>
> http {
>    include       mime.types;
>    default_type  application/octet-stream;
>    server_names_hash_bucket_size 1024;
>    client_header_timeout  1m;
>    client_body_timeout    1m;
>    send_timeout           1m;
>    keepalive_timeout      1m;
>    sendfile        on;
>    client_max_body_size   20m;
>    proxy_connect_timeout  60;
>    proxy_send_timeout     60;
>    proxy_read_timeout     60;
>    proxy_buffer_size      128k;
>    proxy_buffers          64 128k;
>    proxy_busy_buffers_size 128k;
>    proxy_buffering        on;
>    large_client_header_buffers 16 32k;
>    gzip                   on;
>    gzip_static            on;
>    gzip_min_length        1000;
>    gzip_proxied           any;
>    gzip_types             text/plain text/xml application/xml application/x-javascript text/javascript text/css text/json;
>    gzip_disable           "msie6";
>    gzip_comp_level        6;
>
>
>    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
>                      '$status $body_bytes_sent "$http_referer" '
>                      '"$http_user_agent" "$http_x_forwarded_for"';
>
>  access_log  /pub/log/nginx/access_log  main;
>
> server {
>        listen 80 default rcvbuf=8k sndbuf=16k;
>            }
>
>       }
>
>
> upstream bak {
>    server 127.0.0.1:port;
>             }
>
>
> server {
>
> reset_timedout_connection on;
>
> listen ip:80;
>
> server_name    test.ru www.test.ru;
>
> location ~* ^.+\.(htm|html|jpg|jpeg|gif|swf|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ {
>                        root /pub/home/test.ru/www;
>
> access_log off;
> expires 5h;
>        }
>
> location ~ /\.ht {
>                deny  all;
>                    }
>
> location / {
>
>        proxy_set_header        Host            $http_host;
>
>        proxy_set_header        X-Real-IP $remote_addr;
>
>        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for; # $remote_addr;
>
>        proxy_pass http://bak/;
>        proxy_redirect http://test.ru:2003/ http://test.ru/;
>        proxy_redirect http://www.test.ru:2003/ http://www.test.ru/;
>
>        }
>        }
>
>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
>



--
Alexey Malov
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

nginx + Google Analytics

Anton Koshevoy February 13, 2011 09:24AM

Re: nginx + Google Analytics

tantra February 13, 2011 01:20PM

Re: nginx + Google Analytics

ast February 17, 2011 09:19AM

Re: nginx + Google Analytics

Max Ivanov February 17, 2011 10:42AM

Re: nginx + Google Analytics

ast February 17, 2011 11:02AM

Re: nginx + Google Analytics

ast February 17, 2011 09:44AM

Re: nginx + Google Analytics

tantra February 17, 2011 01:38PM

Re: nginx + Google Analytics

ast February 17, 2011 02:44PM

Падение сервера при зажатии кнопки F5

Александр Рочев February 17, 2011 04:18PM

Re: Падение сервера при зажатии кнопки F5

Алексей Малов February 18, 2011 03:46AM

Re: Падение сервера при зажатии кнопки F5

Slava Kokorin February 18, 2011 03:56AM

RE: Падение сервера при зажатии кнопки F5

Савельев Александр February 18, 2011 05:50AM

Re: Падение сервера при зажатии кнопки F5

Olexander Shtepa February 18, 2011 07:12AM

RE: Падение сервера при зажатии кнопки F5

Савельев Александр February 18, 2011 07:22AM

Re: nginx + Google Analytics

ast February 18, 2011 04:07AM

Re: nginx + Google Analytics

Dmitry Morozovsky February 18, 2011 04:50AM

Re: nginx + Google Analytics

Igor Sysoev February 18, 2011 05:18AM

Re: nginx + Google Analytics

Dmitry Morozovsky February 18, 2011 05:14PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 158
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready