Попробуйте использовать strace -p 26721
, чтобы увидеть, что делает процесс. Чтобы узнать, какой дескриптор файла используется, используйте lsof -p 26721
.
ЦП расходуется в% пользовательском состоянии, попробуйте найти дополнительную информацию о PID, потребляющих большую часть ресурса в верхнем выводе. Как уже говорилось, запустите на нем strace -ffttTo /tmp/strace.out -p, чтобы узнать, где он застрял или сколько времени требуется для последовательных системных вызовов. Если есть задержка, вы можете определить ее оттуда.
Также можно использовать lsof, fuser.
Вы можете начать с уменьшения количества запросов Google и Bing ... Вы настроили robots.txt? Исключите ScriptPath из сканирования, чтобы индексировали только канонические URL-адреса страниц, но не URL-адреса с параметрами для api.php или index.php. При необходимости также установите задержку сканирования.
Многие сайты MediaWiki замедляются поисковыми системами из-за небольших ошибок конфигурации.
В В моем случае после запуска top был идентифицирован pid (3174) наиболее потребляющего ЦП (время пользователя составляло 11,8% us):
top - 12:43:19 up 1:35, 2 users, load average: 0.97, 1.05, 1.11
Tasks: 265 total, 2 running, 263 sleeping, 0 stopped, 0 zombie
Cpu(s): 11.8%us, 0.4%sy, 0.0%ni, 87.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 16333780k total, 11207464k used, 5126316k free, 6464k buffers
Swap: 2097144k total, 0k used, 2097144k free, 10078524k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3174 nginx 20 0 705m 49m 23m S 33.5 0.3 1:12.21 php-fpm
3173 nginx 20 0 711m 56m 25m S 28.5 0.4 1:08.62 php-fpm
3187 nginx 20 0 711m 49m 17m S 26.2 0.3 1:00.80 php-fpm
3191 nginx 20 0 717m 59m 21m R 6.6 0.4 1:04.29 php-fpm
Следующая команда была запущена для определения фактора, вызывающего сбои:
strace -ffttTo /tmp/strace.out -p 3174
Файл /tmp/strace.out.3174
содержал следующие строки
12:55:17.417008 open("/var/log/php-fpm/www-error.log", O_WRONLY|O_CREAT|O_APPEND, 0644) = -1 EACCES (Permission denied) <0.000024>
12:55:17.417120 write(2, "NOTICE: PHP message: PHP Depreca"..., 186) = 186 <0.000016>
После запуска:
chown -R nginx:root /var/log/php-fpm
проблема исчезла.