hosting:overload

2.33. Превышение допустимой нагрузки на хостинг

На хостинге существует ограничение в 100 процессорных минут в сутки.

Статистика по потреблению ресурсов ведется при помощи счётчика, встроенного в ядро операционной системы.

Процессорное время — это время, которое потратил процессор сервера на обработку задачи. Процессорное время зависит только от проделанной работы.

1 процессорная минута = Загрузка одного ядра процессора на 100% в течение одной минуты.

Превышение данного лимита означает, что сайты хостинг-аккаунта вызывают повышенную нагрузку на сервер и могут негативно влиять на работу и производительность хостинг-аккаунта.

Все ресурсы сервера распределяются между клиентами, которые расположены на сервере. Если один клиент использует значительно больше ресурсов сервера, чем другие, это приводит к тому, что качество услуг хостинга для остальных клиентов хостинга падает. В связи с этим мы вынуждены вручную контролировать ресурсы, которые потребляются пользователями.

Количество сайтов и их посещаемость не влияют на потребление ресурсов скриптами. Можно создать одну страницу, которая при посещаемости 100 человек в сутки будет использовать 100% ресурсов сервера, а можно создать сайт, который будет отдавать 100000 страниц в сутки и создавать нагрузку в 50 процессорных минут.

Раньше мы вручную обрабатывали только самых крупных нарушителей. Сейчас этот процесс автоматизирован и распространяется на всех клиентов. На сегодняшний день 2% аккаунтов хостинга потребляет 50% ресурсов серверов, деньги, которые оплачиваются, не покрывают затрат на оплату электричества и эту проблему нужно решать не очередным поднятием цен для всех клиентов, а индивидуальной работой с проблемными аккаунтами.

К сожалению, нет. Ограничение в 100 процессорных минут в сутки существует для всех тарифов обычной линейки.

Если аккаунту необходимо больше ресурсов, можно рассмотреть возможность перехода на один из тарифов бизнес-хостинга (подробная информация), VPS или выделенный сервер, где отсутствует лимит процессорного времени — вы будете ограничены лишь ресурсами выбранного тарифа/сервера и сможете их использовать без ограничений по времени.

Однако, если в рамках одного хостинг-аккаунта размещено сразу несколько сайтов, каждый из которых в отдельности не превышал бы лимиты, то в качестве альтернативного варианта можно рассмотреть заказ дополнительных хостинг-аккаунтов и переноса сайтов на них.

Например, в одном хостинг-аккаунте размещено два сайта, каждый из которых потребляет примерно по 70 процессорных минут в сутки. В сумме нагрузка будет выше допустимой, но если заказать дополнительный хостинг-аккаунт и перенести на него один из сайтов, то в итоге вместо одного хостинг-аккаунта с превышением нагрузки получится два хостинг-аккаунта без превышений.

Заказать новый хостинг-аккаунт можно на главной странице нашего сайта, предварительно авторизовавшись в своей учётной записи. Процесс переноса сайтов между хостинг-аккаунтами описан в инструкции.

Установка галочек в настройках оптимизации сайта не снизит нагрузку на сервер, это оптимизация скорости отрисовки страницы браузером. Если скрипты сайтов не оптимизированы, то выставление данных параметров может увеличить кол-во потребляемых процессорных минут.

С момента получения уведомления о превышении нагрузки у пользователя есть 3 дня, чтобы предпринять меры по её снижению до того, как к аккаунту начнут применяться ограничения с целью удержать нагрузку в допустимых пределах. Если в течение этого времени нагрузка всё также будет выше допустимой, то для аккаунта постепенно (раз в день) начнут ограничиваться ресурсы до тех пор, пока суточная нагрузка не окажется в рамках допустимой.

Если нагрузка за последние полные сутки не превышает 100 процессорных минут, то установленные ограничения начнут автоматически сниматься. Снятие ограничений происходит не сразу, а тоже постепенно (раз в день) в порядке, обратном их установке. Если на протяжении этого периода нагрузка так и не будет превышать допустимую, ограничения с аккаунта будут сняты.

Одной из главных причин высокой нагруженности сервера сайта является повышенное количество веб-запросов, вызванное высокой посещаемостью сайта с учетом скриптов сайта, которые выполняются для каждого пользователя. Таким образом, чем более эффективно работают скрипты вашего сайта для одного пользователя, тем большую нагрузку сможет принять ваш сайт в целом.

Также на количество посещаемости сайта влияют поисковые боты, поэтому при индексации вашего сайта поисковыми службами может возникать повышенная нагрузка на сервер. Задать параметры индексации для вашего сайта для снижения загруженности возможно через файл robots.txt или веб-мастер на стороне поискового сервиса.

При необходимости для снижения нагрузки и проведения технических операций можно ограничить доступ к сайту.

Опять же, на нагрузку влияют запросы к базе данных со стороны скриптов сайта.

Запросы в базу данных не должны выполнятся более 15 секунд. Все запросы, которые выполняются более 5 секунд, можно посмотреть в разделе «Медленные запросы».

В данном случае необходимо оптимизировать базу данных. С некоторыми примерами оптимизации можно ознакомиться здесь и здесь.

Нежелательную нагрузку на сайт и сервер могут создавать вредоносные скрипты при их наличии.

Проверить информацию, а так же рекомендации касательно зараженных файлов можно, выполнив антивирусную проверку хостинг-аккаунта.

Вредоносные скрипты могут создавать внешние соединения на другие сайты, что может вызывать повышенное время обработки запросов сайтом. Со списком попыток исходящих соединений можно ознакомиться в разделе «Исходящие соединения».

Включить браузерное кеширование сайта для снижения числа запросов к серверу можно по инструкции.

В списке статических файлов необходимо перечислить через запятую расширения файлов, которые должны кешироваться.

Рекомендуемое время кеширование файлов составляет 1 неделя или выше.

Обратите внимание, что кеширование возможно только статического содержимого (картинок, html-страниц, файлов шрифтов). В случае, если расширение файла не будет указано в списке статических файлов, правила кеширования для него могут быть заданы вручную через файл .htaccess вашего сайта.

Для повышения производительности, безопасности и снижения нагрузки, вызываемой работой PHP-скриптов сайта, рекомендуется сменить версию PHP на 7.0 или выше.

Скрипты, написанные на более ранних версиях PHP, могут быть несовместимыми с новыми версиями PHP. Данные скрипты рекомендуется обновить для обеспечения совместимости с актуальной версией PHP или заменить на альтернативные по функционалу. При использовании CMS следует обновить ядро сайта, установленные темы и плагины до актуальных версий.

Для ускорения работы скриптов сайта и снижения создаваемой ими нагрузки, можно воспользоваться дополнительной услугой OPcache, предназначенной для кеширования скомпилированного байт-кода PHP-скриптов в оперативной памяти. Технология не требует дополнительных модификаций, так как работает напрямую с самим PHP.

Процесс заказа и настройки OPcache описан в инструкции. При первом заказе предоставляется 7 дней тестового режима. Если у вас один из тарифных планов бизнес-хостинга, то OPcache доступен бесплатно в рамках выделенного объема оперативной памяти, поэтому можно сразу приступать к настройке.

Вдобавок рекомендуется подключение технологии Memcache(d), реализующий кеширование запросов к базе данных в оперативной памяти. Для использования Memcache(d) требуется, чтобы скрипты сайта поддерживали эту технологию.

Учёт нагрузки ведётся в целом по хостинг-аккаунту, а не по отдельным размещённым на нём скриптам или сайтам, поэтому точно определить скрипты, создающие нагрузку, невозможно.

Но часто причины проблемы можно определить при помощи ручного анализа логов веб-сервера и информации из разделов «Нагрузка на Web сервер» и «Нагрузка на MySQL сервер».

Логи веб-сервера и графики нагрузки для анализа можно получить в разделе «Мои сайты → Логи сервера/Нагрузка на сайт».

При анализе стоит обратить особое внимание на скрипты, использующие POST- и AJAX-запросы, которые, как правило, вызывают самую большую нагрузку в связи с особенностями их технологии.

Причиной подобного скачка потребления ресурсов, как правило, является DDoS-атака или сканирование сайта с целью взлома.

Необходимо проанализировать логи сервера, особое внимание обращая на нетипичные POST-запросы.

Для защиты от атаки на xmlrpc.php и wp-login.php выполните пункты 8-10 из этой инструкции.

Если Вы решили вопрос с нагрузкой, то на графиках и в статистике нагрузки на веб сервер и нагрузки на Mysql сервер не должно быть превышения потребления процессорных минут и не должно быть потребления более 25% CPU на протяжении более 90 секунд.

  • hosting/overload.txt
  • Последние изменения: 2019/10/15 12:02
  • — zinenko