Блог/Бенчмаркинг хостинга

Проверка производительности хостинга

Автор: Кудашев Сергей

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

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

Для простейшего тестирования нагрузки на процессор, количества выделенной оперативной памяти, а так же скорости работы php был найден прекрасный скрипт (мое зеркало скрипта), которого под мои нужды оказалось более чем достаточно. Обратите внимание, что скрипт требует php 5.

Итак, как работает данный скрипт?

Сначала выполняются математические функции в количестве 50000 итераций, потом строковые функции в количестве 100000 итераций, потом исполняются пустой цикл и if оператор. На каждом из четырех этапов просходит учет времени, которое в дальнейшем мы будем сравнивать. В завершении скрипт выводит время выполнения каждой из четырех тестовых процедур, общее время выполнения, среднюю нагрузку на систему за последние 5 и 15 минут, количество выделенной памяти.

Как интерпретировать результаты теста?

В своей практике я беру 2-3 понравившихся хостинга, а условия на хостингах меняются с довольно часто, поэтому лучше проводить подобные замеры раз в полгода, и исполняю на них данный скрипт. Если скрипт не выполняется, а бывает и такое, то данный хостинг мною отметается сразу. На нем или слишком мало выделено ресурсов под php[ процесс, или процесс слишком сильно ограничен по времени. Такой хостинг мне не нужен.

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

Обратите пожалуйста внимание на несколько моментов: Во-первых если вы тестируете windows хостинг, то значение нагрузки будет 0, так как используемая в скрипте функция определения нагрузки работает только для Unix-like систем. Во-вторых, если вы тестируете VPS/VDS, то там будут совсем другие допустимые цифры по нагрузке, так как логика работы shared хостинга и выделенных хостингов несколько разные. В-третьих, я пока не встречал хостинги, где средняя нагрузка за последние 15 минут превышала бы 12%, поэтому выкладка в 20% нагрузки скорее теоретическая. Но возможно вам повезет больше :)

Комментарии (0)