upstream keepalive debugging
Richard Kearsley
rkearsley at blueyonder.co.uk
Tue Sep 3 12:42:14 UTC 2013
Hi
I seem to have an issue where the upstream keepalives aren't being re-used
proxy_http_version 1.1;
upstream dev1 {
server 10.0.0.11 max_fails=0;
keepalive 1024;
}
location /
{
proxy_pass http://dev1;
proxy_set_header Connection "";
}
On a separate server I run 'ab -n 500 -c 500
http://10.0.0.10/test/blah.txt' ... a few times waiting say 10 seconds
between runs
on the main server I can do netstat between runs, here's the results:
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
2
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
260
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
758
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
950
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
1308
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
1748
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
1992
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
2316
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
2767
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
3063
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
3392
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
3491
root at dev0:/root # netstat -n | grep "10.0.0.11.80" | grep "ESTAB" | wc -l
3787
It shouldn't ever need more than 500 connections to the upstream, but it
keeps making more? and doesn't stick to the 1024 limit....
What's going on?
nginx/1.4.1 / FreeBSD 9.1
More information about the nginx
mailing list