У меня есть сервер Debian (Amazon AWS) с веб-приложением PHP, которым пользуются сотни пользователей.
Моя загрузка ЦП почти всегда ниже 10%. Сегодня около 12: 00:00 ~ Я совершил 2 безумных прыжка на 100% ровно за 1 минуту, а затем вернулся в норму.
Я пытаюсь выяснить, из-за чего это произошло. Возможно, пользователь запускает сценарий, который необходимо исправить.
Как мне узнать, что произошло в это время на моем CPU, какие команды выполнялись и т. Д.?
Лучшим инструментом для такого рода исследований будет "sar".
"sar" - это команда сборки Linux, которая собирает все данные о производительности на постоянной основе, хранит их и позволяет историческому анализу выявлять узкие места.
Если я не ошибаюсь, по умолчанию она отключена, и вам нужно включить её и включить работу cron, которая будет выполнять и собирать события в вашей системе.
Так что в основном, что нужно сделать, так это включить sar, пусть он работает несколько дней и в следующий раз, когда вы поймаете этот всплеск процессора, просто просмотрите лог-файлы sar и найдите, что произошло в вашей системе за это конкретное время.
Вот хороший ресурс о "sar".
.Попробуйте какой-нибудь инструмент мониторинга на процессоре и запустите его на некоторое время и проверьте лог-файлы...если вы используете WordPress или какой-нибудь CMS инструмент, то попробуйте отключить плагины и проверьте.
.Здесь мало что можно отметить
Чтобы исправить это, вы бы предпочли использовать несколько ядер/потоков вашего сервера, попробуйте оптимизировать свой код
Так как у вас есть время, проверьте журналы, чтобы проверить, какой конкретный скрипт запустился на тот момент времени
.