Performance plateau when keepalives enabled

powderhound nginx-forum at nginx.us
Tue Mar 9 01:21:20 MSK 2010


> When I run the benchmark with keepalive_timeout 65, nginx is
> very slow (5-20 seconds delay) to accept new connections as soon
> as it reaches 1500 concurrent connections. It plateaus here: it
> completes all the requests but it never exceeds approximately
> 1500 concurrent connections.

Most likely you hit some network-related limit of your OS or some
firewall inbetween. Check if firewalls have enough number of
state entries, your OS isn't limited by number of sockets, network
buffers and so on.


Thank you for replying.  I should have mentioned, I have tested
with firewall completely disabled and the following sysctls which
I believe should be sufficient.

net.core.rmem_max = 16777216
net.core.rmem_default = 16777216
net.core.wmem_max = 16777216
net.core.wmem_default = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 262144
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2

Is there anything else I can try?

Thanks!
Steve

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,61482,61624#msg-61624




More information about the nginx mailing list