ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Отказ в обслуживании на определенном порту.


  • To: nginx-ru@xxxxxxxxx
  • Subject: Отказ в обслуживании на определенном порту.
  • From: "vstaf" <nginx-forum@xxxxxxxx>
  • Date: Mon, 01 Apr 2013 04:13:20 -0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=helium.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=ZhZI/T34NZul3hOvur1Nce7zBheVdggupWweXndFWRk=; b=npS1tw4dpvHS9DLrf0gVHiZeEGyepyJFBi6BCxiFRImUqDprksBhafCXicvbUiOt0lgJ9xmJJ9PScwf7XR/MClWwCt+uTaNrn4LhBjhn5Fah/a4SlMfxuzeddD49tbkLZVKqNTWaE5Dt4221J/3hpc4ZT+4HHNmmdyOdKP3xs+g=;

Коллеги, надеюсь на помощь в решении периодически возникающей проблемы.

Суть:

Есть nginx, обслуживающий 1 домен на 5 портах + SSL. Периодически (раз в
несколько недель) возникает ситуация, что при попытке коннекта на
определенный порт (назовем его "Х") не проходят даже syn - ack. Обычно это
возникает при цифре 6к syn-запросов в секунду к серверу на пресловутый порт
"Х". На других портах nginx работает нормально и без проблем выполняет все
свои функции.

О сервере: 2хXeon E5620, HT on, 12 gb ram. Centos 5 (2.6.18-238.19.1.el5PAE
i386)
Пиковая статистика из stub_status: rps ~1k, active connections ~8k

sysctl.conf:

net.ipv4.tcp_syncookies = 0
net.ipv4.netfilter.ip_conntrack_max = 10000000

net.ipv4.tcp_fin_timeout = 1
net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 1
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 1
net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 1
net.ipv4.netfilter.ip_conntrack_tcp_timeout_close=1
net.ipv4.ip_local_port_range = 5000 65000

net.ipv4.tcp_max_syn_backlog = 3240000
net.core.somaxconn = 3240000
net.ipv4.tcp_max_tw_buckets = 1440000
net.core.netdev_max_backlog=10000

net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_mem = 1048576 2097152 3145728
net.ipv4.tcp_rmem = 4096 65536 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216

nginx:conf:

worker_processes 16;

events {
    worker_connections  16384;
    use epoll;
    multi_accept on;
}

http {

    tcp_nopush on;
    tcp_nodelay on;
    sendfile        on;
    keepalive_timeout  10;
    keepalive_requests 100000;
    reset_timedout_connection on;
    send_timeout 2;
    client_header_timeout 10;
    client_body_timeout 10;
    proxy_buffering off;

    fastcgi_buffers               4 256k;
    fastcgi_buffer_size           256k;

    client_max_body_size 10m;


Понимаю, что по сути сам nginx тут не при чем, но хотелось бы понять
направление куда копать. Экспериментировал с разными параметрами ядра -
профита так и не получил. Когда количество синов в секунду падает (до
1-1.5к) - все приходит в норму.

Заранее спасибо.

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,237998,237998#msg-237998

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.