Проект "Хостинг Обыкновенный" успешно работает с августа 2005 года

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

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

Согласно нашим Правилам для одного сайта допускается использование процессорного времени не более 5 минут (300 секунд) в сутки (на платном хостинге - 10 минут). Также допускается использование до 1 минуты (60сек.) времени выполнения sql-запросов в сутки (на платном хостинге - до 2 минут (120 секунд)). Значения по нагрузке для своего сайта можно посмотреть в Панели управления (кнопка "Статистика")



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

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

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

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

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