0

I have a VPS Debian server with Apache 2.4.10 mod-php. Server starts normally, but after some time I get 100% cpu on one of www-data processes and a web-server becomes unavailable.

I tried strace on that procces and I got an infinite loop of these lines:

poll([{fd=93, events=POLLIN}], 1, 3000) = 1 ([{fd=93, revents=POLLHUP}])
read(93, "", 13160)

Then I tried lsof ant got this:

COMMAND  PID     USER   FD   TYPE DEVICE SIZE/OFF       NODE NAME
apache2 1134 www-data   93r  FIFO    0,8      0t0 3176528027 pipe

What can cause the problem? When I restart apache, after some time I have the same behavior.

0

Some PHP script on your server is using all of cpu time. Probably you have an infinite loop. Information from strace tells that the script is polling some file descriptor of pipe. Maybe the other end of this pipe has been closed and your script is still trying to read something from it (unhandled error).

If you are not aware of this kind of script on your server, check if there are no other scripts, that could have been "injected" to your server by someone. Check Apache logs to see what files were opened by remote clients.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.