Очень поразила меня отзывчивость техподдержкиЕвгений, размещает сайт рыбной компании
и еще 194599 любимых клиентов
Бомбический хостинг
для ваших сайтов

Контроль нагрузки на виртуальном хостинге

Действующий сайт требует использования аппаратных ресурсов сервера — процессора, оперативной памяти, дисковой подсистемы.

На одной учетной записи (аккаунте) хостинга, в зависимости от выбранного тарифного плана, размещается то или иное количество сайтов, процессы выполнения скриптов которых потребляют процессорные мощности и оперативную память, а запросы к базе данных — ресурсы процессора и дисковой подсистемы.

Услуга виртуального хостинга предполагает разделение (share) этих ресурсов между аккаунтами на сервере и дальнейшее распределение между сайтами на каждом аккаунте.

Ограничения на процессы

Обработка запросов посетителей к скриптам вашего сайта осуществляется с помощью процессов веб-сервера.

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

Также к процессам относится любое действие, совершенное пользователем на сервере: подключение к почтовому ящику, FTP или SSH, выполнение задания в планировщике Cron или скрипта в консоли.

Персональный веб-сервер

Услуга «Персональный веб-сервер» предполагает наличие постоянно запущенных процессов веб-сервера Apache, готовых обработать запросы к сайту. Их номинальное количество определяется тарифным планом и может быть увеличено в рамках некоторых услуг.

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

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

Важно. Чем грозят превышения?

  • Превышение доступного для аккаунта количества процессов приведет к недоступности ваших сайтов и невозможности подключения к аккаунту (FTP, SSH, почтовые ящики).
  • Потребление процессом бóльшего объема оперативной памяти, чем предусмотрено тарифом, при попытке загрузки сайта завершится сообщением об ошибке 500 (Out of memory) или пустой страницей в браузере.
  • Переполнение памяти акселератора (если запущен ресурсоемкий скрипт, например, импорт данных) — также приведет к ответу с кодом 500 (Unable to allocate memory) или очередной пустой странице.
  • При одновременном запуске большого количества требовательных к ресурсам сервера скриптов или в случаях, когда к сайту одновременно обращается большое количество посетителей, при загрузке сайта может появиться сообщение «Слишком много подключений» (код ответа #5020 или #5021).
  • Если процесс не успеет выполниться в отведенное ему время, вместо страницы сайта будет появляться сообщение «Истекло время ожидания запроса» с кодом ответа #5040 или #5041.

Если в коде ответа на страницах с ошибками 502 или 504 присутствует цифра 1, это означает, что запросы были обработаны персональным веб-сервером, тогда как цифра 0 указывает на обработку запросов общим веб-сервером.

Ограничение запросов к сайту

Период времени, в течение которого процессор (CPU) занимается выполнением скриптов сайта, называется процессорным временем. Лимит процессорных секунд зависит от выбранного тарифного плана (эта информация содержится в столбце «Процессор» таблицы, размещенной в документе «Ограничения использования программных и аппаратных ресурсов»).

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

Осуществлять мониторинг нагрузки можно в Панели управления хостингом, используя инструмент «Статистика использования ресурсов». На соответствующих графиках представлена информация о текущем потреблении ресурсов процессора и дисковой подсистемы (MySQL) в контексте тарифной линейки, статистика по количеству и типу запросов к сайтам, а также данные о среднесуточном потреблении ресурсов процессора.

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

Контроль среднесуточного потребления

Допустимое количество использования условных единиц процессорного времени, в течение которого обрабатываются скрипты сайта и запросы к базе данных, определяется тарифным планом аккаунта. Максимально доступный для аккаунта объем потребляемых ресурсов процессора можно рассчитать по формуле:

Максимум = CPU (по тарифу) × 1440 (минут в сутках)

Превышением допустимого лимита считается потребление объема ресурсов процессора, превышающего максимум по тарифу. Данные о суточном потреблении наглядно отображены на специальном графике в Панели управления.

В случае значительных или регулярных превышений лимита использования процессорного времени к аккаунту будут автоматически применены следующие меры:

Превышение Виртуальный хостинг Премиум-хостинг
30% Предупреждение Предупреждение
100% Блокировка Блокировка
Регулярные превышения
(за последние 30 суток)
3 превышения — блокировка 7 превышений — блокировка

Уведомление о превышении лимита ресурсов и блокировке аккаунта отправляется по электронной почте на контактные адреса, указанные в Панели управления. Снятие блокировки может быть произведено автоматически при изменении тарифного плана на такой, лимит ресурсов которого соответствует объему, потребляемому аккаунтом на момент блокировки.

Что делать, если ресурсы тарифа превышены?

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

Кроме того, следует уделить особое внимание оптимизации сайта (использовать кеширование, отключать неиспользуемые модули, своевременно производить профилактику и очистку от вредоносного кода): даже при низкой посещаемости сайта неоптимизированный код или некорректно работающие плагины могут служить причиной интенсивного роста потребления ресурсов сервера.