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
|