Почему же нагрузка на сервере может создаваться скриптами сайта?
Очень часто пользователи обращаются в нашу техническую поддержку с жалобой на работу сайта, а также на скорость загрузки скриптов сайта.
В свою очередь данные пользователи пытаются убедить техническую поддержку, что никаких изменений со стороны конфигурации скриптов сайта не было и всё работало стабильно до определённого момента времени.
Для того чтобы определить, что является причиной сбоя сервера , сотрудники технической поддержки в первую очередь проверяют общую нагрузку на сервере и если общая нагрузка (показатель load average) на сервере не превышает допустимую норму (как показано на рисунке снизу)
и при этом скорость работы остальных сайтов намного Выше нашего проблемного сайта , в таком случае можно предположить, что проблема со стороны клиентского сайта, в первую очередь это касается скриптов сайта.
Основные причины появления нагрузки на сайте:
- Ошибка в системе кеширования сайта, что повлекло за собой создания большего количества страниц и в результате при каждом обращении поисковой системы создаётся нагрузка на сайт и сервер.
2. Произошло нарушение в структуре базы данных, которую использует ваш сайт.
Внезапные отключения электропитания компьютера, действия компьютерных вирусов и вредоносных программ другого типа, ошибки пользователя, ошибки в программном обеспечении, а также действия злоумышленников могут привести к повреждению внутренней структуры файлов базы данных сайта
3. Другие причины: возросла посещаемость вашего ресурса.
Если Вы не производили никаких изменений на Вашем сайте и вдруг получили письмо от нашей технической поддержки о создании нагрузки на сервере, Вам нужно следовать всем инструкциям по предотвращению нагрузки и оптимизации работы сайта.
В присылаемых письмах мы всегда стараемся детально сообщить Вам, что именно создает нагрузку на сервер и предоставить список всех скриптов и процессов, с которыми связана нагрузка.
Принимать меры Вам следует уже в соответствии с указанными в полученном письме данными.
Чаще всего нагрузка со стороны скриптов создаётся в случае использования устаревших версий CMS систем, а также их компонентов и плагинов. Самыми популярными CMS системами, создающими нагрузку на сервере являются Joomla и WordPress.
После анализа 100 сайтов, работающих на CMS Joomla были сделаны выводы, что 79% из них не используют последние версии своей CMS системы, для пользователей Wordpress эта цифра составила 71%.
Кроме того, иногда даже регулярное изменения скриптов может стать причиной создания нагрузки на сервере. При внесении даже незначительных изменений в конфигурацию скриптов (при отсутствии знаний по разработке и конфигурации скриптов) - это может негативно повлиять на работу сайта, а в целом на нагрузку на всём физическом сервере.
В таком случае если техническая поддержка высылает Вам уведомление о создании нагрузки со стороны Вашего сайта, Вам в первую очередь нужно вспомнить какие последние изменения Вы вносили в конфигурацию скриптов, после этого проанализировать логи Вашего сайта для анализа ошибок, указанных в логах.
Если нет возможности самостоятельно оптимизировать скрипты Вашего сайта, необходимо обращаться к разработчикам данных скриптов или к личным программистам.
Обычно проблемы с сайтом, вызванных нехваткой ресурсов для выполнения скрипта, возникают на CMS системах, где основным файлом является index.php, через который происходит подгрузка контента сайта и всех его модулей.
Пользователю в таком случае нужно проверить все модули сайта, подключённые к нему, а также попробовать отключить те модули, которые используют больше всего ресурсов сайта.
В первую очередь нужно отключить следующие модули если ваш сайт работает на CMS системе Joomla:
1) отключить поиск по сайту, т. е. поиск по всем разделам сайта ( например Поиск - Веб-ссылки, Поиск - Контакты и т.д.) .
Вместо этого лучше использовать поиск по сайту, предоставленный компаниями Google и Yandex.
2) отключить все редакторы, кроме того, который Вы используете для работы
3) отключить модуль Content — Code Hightlighter (GeSHi) (Подсветка кода в статьях) — по умолчанию данный плагин в Joomla обычно отключен
Кроме того, нужно проверить шаблон сайта, так как иногда он может быть нагружен графикой и большим количеством java скриптов.
В случае когда у сайта уходит достаточно много времени для генерации страниц, при этом содержание страниц почти никогда не меняется, можно один раз сгенерировать страницу и сохранить её в файл, а при новых обращениях отдавать данные из этого файла с помощью функции кеширования.
Для уменьшения нагрузки можно использовать встроенный кеш Вашей CMS системы( на примере Joomla). Включение кеширования однозначно увеличит скорость загрузки страниц сайта, а также уменьшит нагрузку со стороны сайта на сервер. Кеширование также нужно включить и в настройках модулей Вашего сайта.
Стандартный SEF также может позитивно повлиять на работу сайта, увеличить его безопасность и поднять загрузку сайта на уровень выше.
Также нужно проверить базу данных сайта и выполнить её очистку от старых расширений. Периодически нужно оптимизировать базу данных сайта через PhpMyadmin, предварительно создавая резервную копию базы данных сайта.
Чтобы в будущем не возникало проблем с сайтом, нужно использовать только оптимизированные графические и мультимедийные файлы,желательно не использовать изображения с других сайтов, а добавлять только со своего сервера.