ПРОЕКТЫ 


  АРХИВ 


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]

Re: оптимизация системы для nginx



config:
worker_processes  8;
error_log  logs/error.log  notice;
events {
  worker_connections  16384;
}
http {
   include       conf/mime.types;
   default_type  application/octetga-stream;
   log_format  main  '$request_uri   $msec   $http_referer   $remote_addr'
                       '       $http_user_agent        $http_x_forwarded_for';
   access_log  logs/access.log  main;
   sendfile        on;
   #tcp_nopush     on;
   keepalive_timeout      0;
   tcp_nodelay           on;
   send_timeout          10;
   client_header_timeout 10;
   server_names_hash_bucket_size 64;
Дальше локации - ничего интересного.

sysctl:

net.core.wmem_max = 204800000
net.core.wmem_default = 204800000
net.core.rmem_max = 819200000
net.core.rmem_default = 819200000
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_no_metrics_save = 1
net.core.netdev_max_backlog = 100000
net.ipv4.tcp_congestion_control = htcp
net.ipv4.tcp_max_syn_backlog = 256000
net.ipv4.tcp_fin_timeout = 15
net.ipv4.conf.bond0.arp_ignore = 1
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.default.arp_ignore = 1
fs.file-max = 65536
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_max_tw_buckets = 2048000
net.core.somaxconn = 4096
net.ipv4.tcp_mem = 786432 1048576 1572864
net.ipv4.tcp_timestamps = 0
net.core.dev_weight = 1024
net.ipv4.tcp_max_orphans = 64000
net.ipv4.ip_local_port_range=1024 65535

Viatcheslav E. Kouznetsov пишет:
Привет!
Ну как минимум покажи конфиг nginx'а и sysctl (изменения
относительно дефолтного центосовского)

В сообщении от 16 февраля 2010 17:39 calculator@xxxxxxx написал(a):
Привет.
При определенной посещаемости nginx перестает отдаваться. В netstat
ругань на "times the listen queue of a socket overflowed".
nginx с дебагом ругается:
2010/02/11 14:05:52 [info] 27879#0: *53029559 recv() failed (104:
Connection reset by peer) while reading client request line, client:
92.37.202.227, server: www.site.ru
2010/02/11 14:05:52 [info] 27879#0: *53029559 writev() failed (32:
Broken pipe) while reading client request line, client: 92.37.202.227,
server: www.site.ru

centos    2.6.18    nginx-0.3.54

Интересно то, что ресурсы у системы вроде как есть:
mpstat:
10:13:20 AM  CPU   %user   %nice    %sys %iowait    %irq   %soft
 %steal   %idle    intr/s
10:13:21 AM  all    7.12    0.00   10.62    0.12    0.25   26.62
0.00   55.25  17738.38
10:13:21 AM    0    6.06    0.00   24.24    0.00    0.00   47.47
0.00   22.22   2088.89
10:13:21 AM    1    7.07    0.00   11.11    0.00    0.00   23.23
0.00   58.59   2281.82
10:13:21 AM    2    7.07    0.00    8.08    0.00    1.01   20.20
0.00   65.66   2295.96
10:13:21 AM    3    7.07    0.00    8.08    0.00    1.01   23.23
0.00   62.63   2201.01
10:13:21 AM    4    5.05    0.00    9.09    0.00    0.00   31.31
0.00   56.57   2108.08
10:13:21 AM    5    6.06    0.00    8.08    0.00    0.00   24.24
0.00   62.63   2260.61
10:13:21 AM    6   11.11    0.00    8.08    0.00    0.00   23.23
0.00   58.59   2268.69
10:13:21 AM    7    7.07    0.00    9.09    0.00    0.00   23.23
0.00   60.61   2229.29

iostat:
Device:         rrqm/s   wrqm/s   r/s   w/s   rsec/s   wsec/s avgrq-sz
avgqu-sz   await  svctm  %util
sda               0.00     6.67  0.00 37.67     0.00 13861.33
368.00     0.16    4.20   0.53   2.00
sda1              0.00     6.67  0.00 13.00     0.00   157.33
12.10     0.02    1.38   0.08   0.10
sda2              0.00     0.00  0.00 24.67     0.00 13704.00
555.57     0.14    5.69   0.77   1.90
sda3              0.00     0.00  0.00  0.00     0.00     0.00
0.00     0.00    0.00   0.00   0.00

Процессы nginx'а висят примерно пополам в sleep/run.
Если рядом к примеру на 81 порт запустить еще 1 nginx, он хорошо отдается.
somaxconn и backlog выкручены.
Пробовал играться с worker_processes worker_connections rcvbuf sndbuf,
ulimits, но эфекта нет :-(
С этим можно бороться?

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


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


 




Copyright © Lexa Software, 1996-2009.