|
|

Зачем считается нагрузка?
Сервер для виртуального хостинга - как коммунальная квартира. У всех
отдельная недорогая комната, но некоторые ресурсы делятся на всех: туалет,
к примеру, или ванная. Также и виртуальный хостинг - на одном сервере
располагаются 200-250 клиентов, каждый из которых имеет отдельный сайт
или почтовые ящики, но ресурсы, необходимые для обслуживания, одни на всех:
процессор, память, диски и т.д. И если объем оперативной памяти или дискового
пространства, выделяемых каждому пользователю можно ограничить средствами
операционной системы, то загрузку процессора ограничить с сохранением
работоспособности отдельных скриптов довольно проблематично. Поэтому на нашем хостинге
нагрузка на процессор ограничивается достаточно высоким значением для недопущения
краха системы, а расчётная нагрузка на пользователя вычисляется
постфактум. В случае, если нагрузка, создаваемая Вашим аккаунтом,
будет вызывать опасения или будет критичной, Вам будут высланы уведомления
на контактный адрес аккаунта.
Как считается нагрузка?
UNIX для каждого процесса держит статистическую информацию о времени
запуска, занимаемой памяти, времени завершения процесса, его имя и счетчик
квантов выделенного этому процессу времени CPU. После завершения процесса
эти данные записываются в системный журнал.
Суммируя данные по процессорному времени, и, предполагая, что один CPU
может выделить 60 минут своего времени в час, мы считаем процент нагрузки.
Статистика подсчитывается раз в 15 минут. Данный интервал был выбран на
основании тщательного анализа принципов и особенностей работы серверов,
выделенных под виртуальный хостинг.
Возможно ли, что процессор грузят чужие скрипты из-за чего мои скрипты
выполняются долго, а я получаю предупреждения от ваших роботов?
Нагрузка считается по абсолютным цифрам процессорного, а не
реального времени. Процессы других пользователей и системы
только мешают Вашим процессам потратить это время, они отнимают его у Вас.
Соответственно, статистика может быть только занижена, но никак не завышена.
Я исправил свои скрипты, а статистика говорит, что нагрузка, создаваемая
ими, только увеличилась. Возможно ли такое?
Да, такое возможно. Вероятно, Ваши скрипты мешали сами себе. Самая простая
аналогия - водопроводный кран. Чем больше Вы открываете его, тем больше
протекает через него воды.
Какой из моих скриптов создает такую сильную нагрузку на процессор?
Напрямую этого не узнать. Понятно, что если система будет записывать
историю вызовов программ, переменные окружения и прочую метаинформацию,
то серверы будут заниматься не обслуживанием сайтов, а ведением статистики
по своей работе.
Временные промежутки подсчета статистики использования ресурсов позволяют
без применения каких-то особых математических вычислений оценить логи
веб-сервера для поиска скрипта или сравнить время с записями в таблице cron.
Возможно, это не скрипт. Из-за особенностей настройки хостинга время процессов
веб-сервера, обслуживающих сайты клиентов, тоже учитывается в статистике.
К примеру, вложенное стоекратно SSI-включение в shtml-странице.
Как выяснить нагрузку, создаваемую тем или иным скриптом?
Запустить, например, его из командной строки UNIX командой time(1).
После завершения работы будет выдано процессорное время, выделенное
Вашей программе. Аргументы команды time позволяют сделать вывод наиболее
удобным для Вас.
|