Возможные причины роста нагрузки
Повышение нагрузки на вашем аккаунте может объясняться различными причинами. Возможно, ваш бизнес значительно вырос или проект приобрел популярность; возможно также, что причиной стала атака конкурентов, вредоносная активность или что-то еще.
Чаще всего рост нагрузки вызывается одной из следующих причин:
- Рост посещаемости. Это является хорошим знаком для вашего бизнеса, но говорит о необходимости оптимизации сайта или же выбора более мощного технического решения, подходящего для новых масштабов вашего проекта.
- Использование неоптимизированных скриптов. В данном случае нужно оптимизировать код сайта самостоятельно или при помощи специалистов.
- Отключение кэширования. Кэширование позволяет меньше обращаться к файлам и базе данных, тем самым заметно снижая нагрузку на сервер.
- Действие вредоносного кода. Возможно, ваш сайт был взломан и заражен вредоносными файлами; более подробно о взломах и их предотвращении можно почитать в отдельной статье.
- Нежелательная активность поисковых или иных ботов. Такую причину можно диагностировать с помощью анализа логов доступа к сайтам. Вы можете включить логи в панели управления аккаунтом (раздел «Инструменты» — «Логи») или запросить их у технической поддержки, указав интересующие вас даты.
- Увеличение объема обрабатываемых данных. В общем случае это говорит о росте бизнеса, а значит требует оптимизации сайта или увеличения ресурсов.
Что касается причин однократного резкого скачка нагрузки, наиболее вероятными из них являются:
- скачок посещаемости (например, если вы запустили рекламную акцию);
- работы на сайте;
- действие вредоносного кода;
- DDoS-атака;
- ошибка в логике работы скриптов.
Если же высокая нагрузка возникает пиками, периодически, это может происходить из-за длительного (до нескольких суток) выполнения процессов аккаунта или запросов к базам данных, нагружающих процессор. В результате при их завершении это приводит к резкому скачку показателя нагрузки.
Следить за запущенными на аккаунте процессами вы можете при подключении по SSH с помощью утилит top
, htop
. Для просмотра текущих запросов к MySQL можно использовать SQL-запрос:
SHOW FULL PROCESSLIST;