Hello,
I am running nginx 0.7.67-3 on debian, now without php, mostly serving
one empty html. It was working fine for several weeks, handling about
800 connections per second with 2 work processes. Few days ago it
started to be very slow, during peak hours almost impossible to connect,
but I don't see any bottleneck. I tried increasing the number of
workers, using one 1 worker, using multi_accept - nothing helped. What I
see on server is that I have more than 500 sockets in SYN_RECV state and
nginx process seems to be doing nothing... strace shows this:
gettimeofday({1312807826, 920091}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
gettimeofday({1312807827, 421795}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
gettimeofday({1312807827, 923222}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
gettimeofday({1312807828, 424994}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
gettimeofday({1312807828, 926449}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
gettimeofday({1312807829, 428064}, NULL) = 0
epoll_wait(16, {}, 512, 500) = 0
like if it had nothing to do - despite those waiting connections... I
din't change anything on the server or nginx itself. Maybe the traffic
is different (coming from different countries for example), but that
shouldn't have any influence.
The traffic is being moved from this old server and domain to a new one.
The bad thing is that today the slowness started also on the new server!
There we have nginx 1.0.5 from debian dotdeb with php5-fpm. Traffic is
to one php script which does one INSERT to the mysql (ad tracking). The
new server has 6 GB RAM, 6-core Xeon CPU and is almost idle.
epoll_wait(6, {}, 512, 500) = 0
epoll_wait(6, {}, 512, 500) = 0
epoll_wait(6, {}, 512, 500) = 0
epoll_wait(6, {}, 512, 500) = 0
epoll_wait(6, {}, 512, 500) = 0
What could be the problem?
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,213502,213502#msg-213502