Иногда мой веб-сайт «выходит из строя» из-за того, что Mysql потребляет все ресурсы, но я думаю, что это не останавливает создание дополнительных процессов httpd. Это возможно? Если я перезапускаю apache, эти процессы исчезают, и я вижу, как потребление ЦП процессом mysql медленно снижается, а затем сайт снова в сети.
У меня все равно не получается найти узкое место. На сайте много cronjobs (скриптов php), и каждый из них генерирует логи, которые включают общее время выполнения.
Итак, моей первой мыслью было попытаться найти сценарий, который занимал много времени, но это было невозможно, потому что только один из них замедлял сервер mysql, чтобы все они увеличили время выполнения.
Любой совет?
Где я могу узнать, как найти узкие места?
Примечание: я использую CentOS, apache 2, php 5.3 и mysql 5
Вам следует начать с журнала медленных запросов: http://dev.mysql.com/doc/refman/5.1/en/slow-query-log.html
Вы также можете проверить, не превышает ли max_used_connections значение max_connections:
SHOW VARIABLES LIKE 'max\_connections';
SHOW STATUS LIKE 'max\_used\_connections';