I am starting to have problems with one of our servers behind haproxy.  It's
busy, but it has more resources to handle more connections, but is having a
bit of trouble with the incoming rate and is getting flagged down.  I am
having trouble finding what /proc (linux 2.6) to tweak.

 

(These are from the server processing the requests, not the haproxy server)

# netstat -s | grep -i list   

    1911871 times the listen queue of a socket overflowed

    1911871 SYNs to LISTEN sockets ignored

 

Anything look bad or missing:

echo 1024 60999 > /proc/sys/net/ipv4/ip_local_port_range

echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout

echo 4096 > /proc/sys/net/ipv4/tcp_max_syn_backlog

echo 262144 > /proc/sys/net/ipv4/tcp_max_tw_buckets

echo 262144 > /proc/sys/net/ipv4/tcp_max_orphans

echo 300 > /proc/sys/net/ipv4/tcp_keepalive_time

echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle

echo 0 > /proc/sys/net/ipv4/tcp_timestamps

echo 0 > /proc/sys/net/ipv4/tcp_ecn

echo 1 > /proc/sys/net/ipv4/tcp_sack

echo 0 > /proc/sys/net/ipv4/tcp_dsack

echo 3000 > /proc/sys/net/core/netdev_max_backlog

echo 3000 > /proc/sys/net/core/somaxconn

 

 

The haproxy server shows a max of about 200 connections to this backend at
any one time, and the server does make lots of outgoing connections too, but
not much else incoming.  The application should be able to handle 500
connections.

 

Shouldn't be sending more then about 200, maybe 300 connections a second.
Could be bursty though, so I guess some seconds might be higher.

 

 

Reply via email to