Нагрузка, за которую закрывают сайты

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

Для начала определим, что такое "нагрузка".
Специальное программмное обеспечение, установленное на всех хостинг-серверах, постоянно собирает статистику об активности каждого сайта, который размещен на хостинге.
Это множество параметров, из которых в данной статье важно упомянуть количество процессорного времени, среднее количество оперативной памяти, которую использует данный сайт, количество и время исполнения sql-запросов. Именно эти параметры определяют, насколько много ресурсов сервера использует сайт.

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

Откуда берется нагрузка

Когда-то давно сайты были в основном набором html-документов, и никакой нагрузки не создавали. Такие сайты и сейчас есть. Но все чаще сайты представляют собой базу данных, и набор программ, которые из этих данных делают html-страницы "на лету", т.е. по запросу посетителя. Разница понятна?
Готовый html и html, который собирается из разрозненных частей каждый раз, когда к нему обращаются. Эти программы называются CMS, content management system, система управления содержимым сайта. WordPress, Drupal, PHP-Nuke, Joomla, e107 и многие многие другие. Все больше сайтовладельцев используют эти системы, потому что это просто и понятно, и с ними даже школьник начальных классов вполнеможет создать довольно навороченный сайт. Большинство форумов работают так же.
И вот, спустя несоклько недель такой сайтостроитель получает письмо, в котором говорится, что его сайт будет закрыт за нагрузку на процессор. Ему обидно - ведь все только-только начало получаться.
Расмотрим, что произошло.

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

В случае если на сайте установлена CMS, все сложнее:
- CMS определяет, что это за посетитель, и присваивает ему некий идентификатор, который сохраняет в базе данных;
- CMS определяет, какую страницу запросил посетитель, и каковы права этого пользователя при просмотре этой страницы;
- CMS выбирает данные для этой страницы из базы данных, причем из нескольких разных таблиц;
- CMS определяет, какой шаблон оформления использовать для этого пользователя;
- CMS Формирует html-страницу, и отсылает ее посетителю.
- CMS сохраняет в базе данных информацию обо всем происшедшем.
Вся эта невидимая активность не так безобидна, и часто создает огромную и совершенно бесполезную нагрузку на сервер. Особенно бесполезную в случае, когда за информацией обратился не посетитель, а поисковый бот. Ситуации, когда у созданного достаточно давно и стабильно работающего сайта вдруг резко возрастает нагрузка на сервер из-за атаки роботов, происходят достаточно часто.
Запрет индексации отдельных разделов сайта избавит ваш сайт (и наш сервер хостинга) от излишней нагрузки. Мы настоятельно рекомендуем выполнять хоть частичный запрет индексации динамических частей сайта (форумы, доски объявлений и т.п.). Подробнее о методах снижения нагрузки, создаваемой роботами...

Некоторые CMS больше, некоторые меньше, но грузят все. Самые отъявленные мы объявили запрещенными к использованию (см. Правила хостинга). Этот список будет пополняться.
Рекомендовать какие-то использовать не будем, потому что все они более или менее напрягают. Можем порекомендовать делать простые html-сайты, многие из которых находятся на нашем хостинге более 2-х лет, и с которыми никогда не бывает проблем, но понимаем, что это нереально - заставить всех делать так. Экспериментируйте, рискуйте.

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

Возможности любого хостинг-сервера имеют предел, и когда он превышен, от этого страдают все сайты, которые на нем расположены. Они начинают медленно открываться, и из-за этого теряют своих посетилелей. Чтобы этого не допустить, мы просматриваем рейтинг сайтов по создаваемой ими нагрузке. И закрываем те сайты, которые грузят сильно. Что значит "сильно" - объяснить можно примерно так. В неких совершенно условных единицах вычислительная мощность сервера составляет около 200 единиц. А некоторые сайты на CMS вполне могут использовать 20 и более единиц. Получается, что один сайт потребляеть 1/10 часть сервера, от чего страдают тысячи других сайтов.
Разумеется в таких случаях мы принимаем решение отказать этому сайту в обслуживании для того, чтобы сохранить качество сервиса для других.

Согласно нашим Правилам для одного сайта допускается использование ресурсов сервера:

Параметры/Тариф
Бесплатный
Обыкновенный
Большой

Процессорное время, сек./сутки

300 900 1500

Время sql-запросов, сек./сутки

60 120 270

Реально почти всегда закрываются сайты, которые начинают потреблять более 5% ресурсов сервера. Таким сайтам нужен отдельный сервер, а не хостинг, тем более бесплатный. С платными аккаунтами ситуация немного другая, до 10% обычно мы их терпим. Если больше - возвращаем деньги и рекомендуем найти другой хостинг или отдельный сервер.
Если же закрывать некого - мы просто покупаем новый сервер.


Значения по нагрузке для своего сайта можно посмотреть в Панели управления (кнопка "Статистика")



Ваш сайт заблокировали за нагрузку - что делать?

Если все-таки так случилось, что мы заблокировали ваш сайт - не паникуйте. Мы вам не враги, и вполне положительно реагируем на вежливые просьбы. За исключением тех случаев, если к нам обращаются спаммеры, порнографы, мошенники, строители дорвеев и подобная нечись.
Если вам просто нужно забрать свои данные - попросите открыть ftp-доступ.
Если вы хотите сохранить адрес сайта и его посетителей, есть несколько вариантов.
Самым правильным, конечно, будет регистрация заранее своего домена, который вы можете переносить с хостинга на хостинг сколько угодно раз.
Если использовали наш адрес, *.ho.ua - ситуация тоже не безвыходная. Можно попросить нас открыть аккаунт, после чего убрать CMS (или некоторые ее модули), и сделать сайт статичным html. Или установить другую CMS, менее требовательную к ресурсам.
Если без любимой CMS никак не обойтись, а адрес хочется сохранить - установите ее на другом хостинге, а на нашем сделайте на страницу-заставку с текстом вроде "Приносим извинения, сайт переехал по адресу XXXX".
Еще раз - не паникуйте. И не грубите, и все у вас получится.

Общее резюме.

Если используете CMS для посещаемого сайта - подумайте о платном хостинге
заранее. Не обязательно у нас. Если не хотите об этом думать - будьте готовы к тому, что когда ваш сайт вырастет, мы можем отказать вам в обслуживании. Чтобы не было потом обиженных писем вроде "я только только дал платную рекламу, и напечатал визитки, а мой сайт закрыли за нагрузку".
Во-первых строить бизнес на бесплатном сервисе просто глупо.
Во-вторых - вы же не возмущаетесь, что у вас, например, выросла нога и вам не подходят ботинки, которые вы носили в 6-м классе. Считается нормой купить новую обувь или одежду, когда вырастаешь, но мало кто понимает, что сайт тоже может вырасти и перестать помещаться в условиях бесплатного хостинга.

Свои комментарии можно высказывать на форуме.