Whenever nginx is sent a HUP signal, the cpu jumps to 100% then slowly
drops until all the nginx worker processes that are trying to shutting
down are done. Those nginx process usually take a while to shutdown
since we're serving very large files (200MB-2GB). Any ideas why this is
happening?
From the strace below it looks like it all in sendfile but I wouldn't
think that would so cpu intense.
-gary
/usr/local/nginx/sbin/nginx -V
nginx version: nginx/0.8.52
built by gcc 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
TLS SNI support enabled
configure arguments: --with-http_ssl_module --with-http_flv_module
This is from about 10 seconds of strace of one of the nginx process
while shutting down.
sudo strace -cp 7087
Process 7087 attached - interrupt to quit
^CProcess 7087 detached
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
99.85 0.071681 139 515 sendfile
0.15 0.000110 0 252 epoll_wait
------ ----------- ----------- --------- --------- ----------------
100.00 0.071791 767 total