Содержание статьи
В забеге будут участвовать FirstVDS, 1cloud, cloud4y, UltraVDS, bigd.host и RuVDS. Думаю, такого количества достаточно, чтобы объективно оценить ситуацию на отечественном рынке. Для теста возьмем работающие под управлением Windows Server мощные VPS/VDS, построенные на быстром железе. Рассмотрим три категории: начального и среднего уровня, а также продвинутые серверы — в каждой категории будем, насколько это возможно, ориентироваться на один ценовой диапазон и проверим, что можно получить у разных хостеров за те же деньги.
Если минимальный ценник провайдера выше среднего, берем виртуальную машину в минимальной для соответствующего диапазона конфигурации. Если провайдер не предлагает премиальные конфигурации, возьмем конфигурацию попроще, более или менее похожую. Нас в данном случае больше волнуют деньги, а не гигабайты с мегагерцами.
Конфигурации и цены
Под конфигурацией начального уровня для Windows Server мы подразумеваем два вычислительных ядра, 2 Гбайт оперативной памяти и SSD-накопитель на 20 Гбайт — это необходимый минимум, от которого придется отталкиваться, даже если у провайдера есть варианты попроще. В теории серверные версии Windows могут работать и на более слабых машинах, но издевательства над организмом в этой статье мы не рассматриваем.
Здесь сразу определился аутсайдер — bigd.host. Предлагаемые этой компанией варианты явно слабее нужной нам конфигурации, но они и гораздо дешевле средних по рынку. Есть и явные лидеры: цены на услуги cloud4y гораздо выше среднего в нашей минимальной конфигурации. Насколько это оправданно, будем смотреть на тестах.
Хакер #305. Многошаговые SQL-инъекции
Конфигурация среднего уровня — это три вычислительных ядра, 3 Гбайт оперативной памяти и SSD на 80 Гбайт. Здесь у нас лидеры и аутсайдеры по ценам и конфигурациям те же, что в предыдущем случае. Впрочем, смотри сам. В таблице все наглядно отражено.
Высокопроизводительный сервер без компромиссов — это минимум восемь вычислительных ядер, 16 Гбайт оперативной памяти и SSD на 120 Гбайт.
SLA и коэффициент готовности
Провайдеры, продающие виртуальные машины, иногда декларируют некий коэффициент готовности (UPTIME) центра обработки данных, в котором размещено их оборудование. Как правило, он составляет 99,98% — столько времени ЦОД (а соответственно, и ваш VPS/VDS без учета возможных аппаратных неисправностей сервера, глюков установленного ПО и проблем с ИТ-инфраструктурой хостера) должен гарантированно работать.
В основе этих цифр — статистика сбоев и плановых установок, собранная организацией Uptime Institute во множестве дата-центров. Если верить ей, коэффициент готовности инженерной инфраструктуры дата-центра уровня Tier III (самый ходовой для коммерческих ЦОДов) составляет 99,982%, а для Tier II — 99,972%. Пусть эти показатели не вводят вас в заблуждение: реальный коэффициент готовности объекта определяется на основе собранной по нему индивидуальной статистики.
Uptime Institute опубликовал данные много лет назад, они касаются только инженерной инфраструктуры (не затрагивают ИТ-нагрузку) и представляют собой «среднюю температуру по больнице», которую сегодня уже нельзя считать актуальной. Маркетологи компаний-провайдеров взяли красивые цифры на вооружение и пустили в обиход очередной миф. Тем не менее, если компания готова взять на себя ответственность и прописать коэффициент готовности инженерной инфраструктуры ЦОДа в SLA, это дополнительный плюс.
Тесты
Слишком большое количество участников не позволяет провести дорогостоящее нагрузочное тестирование с близкими к реальным профилями нагрузки. Мы решили ограничиться поверхностной проверкой работоспособности каналов связи и синтетическими тестами с использованием популярных утилит. Такой подход позволит грубо сравнить виртуальные машины и сделать вывод о соотношении стоимости услуги и возможностей сервера. В результате удастся понять, в каком случае затраты будут более эффективны.
Каналы связи
В качестве клиентской машины возьмем еще один виртуальный сервер внешнего по отношению ко всем участникам провайдера, чтобы подопытные были в более или менее равных условиях. Проверять каналы связи будем только на одной конфигурации каждого провайдера — нет смысла гонять их все. Сначала мы пропинговали виртуальные серверы сотней маленьких (64 байт) и сотней больших (1 Кбайт) пакетов: потерь в процессе тестирования не было, а время отклика оказалось практически одинаковым, что неудивительно.
Понятно, что глубокое нагрузочное тестирование каналов нужно делать в разное время суток, а состоять оно должно из нескольких итераций и статистической обработки результатов. Для нашей поверхностной проверки это все не нужно — и так понятно, что сетевые возможности виртуальных серверов участвующих в обзоре провайдеров примерно равны.
Синтетический тест GeekBench 4
Для проверки вычислительных возможностей виртуальных машин традиционно используем популярную утилиту. Она позволяет провести более двух десятков тестов в нескольких категориях: Cryptography, Integer, Floating Point, Memory. Тут используются алгоритмы сжатия, работа с JPEG, парсинг HTML, SQLite — GeekBench считается одним из наиболее всесторонних тестов для Windows. Не затрагивает он, пожалуй, только дисковую подсистему, поэтому ее мы проверим с помощью CrystalDiskMark.
Конфигурация 1 — сервер начального уровня
Конфигурация 2 — сервер среднего уровня
Конфигурация 3 — высокопроизводительный сервер
Результаты тестирования близки к ожидаемым и соответствуют заявленным провайдерами конфигурациям. Важно понимать, что синтетический тест не отражает реальных рабочих нагрузок, в процессе эксплуатации может возникнуть совершенно иная ситуация — это очень сильно зависит от сценариев использования сервера.
Производительность дисковой подсистемы, CrystalDiskMark 6
Еще один распространенный бенчмарк, который позволяет провести тестирование последовательной и случайной записи/чтения с глубиной очереди 1, 8 и 32. Результаты тестирования сведены в диаграмму, и здесь хорошо заметен некоторый разброс в производительности. У ряда провайдеров порог явно выше, но утилита не смогла нагрузить дисковую подсистему настолько, чтобы до него дойти.
Здесь MB/s — это 1 000 000 байт/с (для сравнения у SATA 600 — 600 000 000 байт/с), KB равен 1000 байт, KiB — 1024 байт.
Итоги и выводы
Хотелось бы отметить, что все провайдеры идут практически вровень за исключением предлагающих явно более слабые конфигурации FirstVDS и bigd.host. Также наблюдается заметное по сравнению с прогнозируемым снижение результатов теста (относительно общего уровня) GeekBench у виртуальных серверов UltraVDS средней и высокой производительности. Трудно сказать, с чем оно связано, поверхностных синтетических тестов недостаточно для детального препарирования работы виртуальных машин.
По результатам работы утилиты CrystalDiskMark явных лидеров выделить тоже трудно, хотя по некоторым показателям UltraVDS и cloud4y обошли конкурентов, а производительность HDD bigd.host ожидаемо оказалась заметно ниже, чем у SSD других участников.
В целом рассмотренные варианты (кроме двух явных аутсайдеров) можно считать примерно равнозначными, а потому нам остается только сравнить цены. Стоимость услуг bigd.host значительно ниже, чем у конкурентов, что вполне естественно, если учесть более скромные характеристики виртуальных серверов.
В большую сторону заметно выделяются, пожалуй, только цены у cloud4y. Если судить по сайту, этот провайдер ориентирован на достаточно крупных корпоративных заказчиков, покупающих частные облака и услуги SaaS. Рискнем предположить, что компания просто не заинтересована в мелких клиентах, покупающих виртуальные серверы в розницу, и потому ставит для них заградительные тарифы.
Также хотелось бы выделить из общего списка участников провайдера RuVDS. Их серверы показали высокие результаты в тестах при относительно невысоких ценах: по соотношению цена/производительность — первое место.