NVMe или SSD: есть ли разница для сайта
Для небольшого сайта разница между NVMe и SSD почти незаметна: страницы отдаются из памяти, а не с диска. Она появляется у магазинов и сайтов с большой базой данных. При этом NVMe у того же хостера стоит всего на 45–80 ₽ в месяц дороже, а иногда и дешевле, так что решает обычно не тип диска, а объём и то, как хостер его ограничил.
Если у вас блог, сайт-визитка или лендинг, посетители не заметят, NVMe у сервера или обычный SSD. Готовая страница с кешем отдаётся из оперативной памяти за миллисекунды, и диск в этом почти не участвует. Разница становится видна, когда сайт постоянно читает и пишет базу данных: в интернет-магазине с тысячами товаров, в поиске по каталогу, при импорте прайсов, в админке WordPress с WooCommerce или в Битриксе.
Поэтому правило простое. Если NVMe стоит столько же или чуть дороже, берите NVMe. Если ради него приходится урезать память, лучше взять больше памяти на SSD: 2 ГБ на SSD для сайта полезнее, чем 1 ГБ на NVMe, потому что база данных, которая помещается в память, к диску почти не обращается.
Чем NVMe отличается от SSD
Оба диска — флеш-память без движущихся частей, разница в том, как они подключены к компьютеру. Обычный SSD работает через интерфейс SATA, рассчитанный когда-то на жёсткие диски. Его потолок около 550 МБ/с, и он обрабатывает одну очередь из 32 команд. NVMe подключён напрямую к шине PCIe: на PCIe 3.0 это до 3,5 ГБ/с, на PCIe 4.0 до 7 ГБ/с, а очередей может быть тысячи.
Для сайта важны не мегабайты в секунду, а задержка мелких операций. База данных читает и пишет кусочки по 4–16 КБ в случайных местах диска, и каждый запрос посетителя может ждать десятки таких операций. На NVMe одна такая операция занимает меньше времени, а под одновременной нагрузкой разрыв растёт, потому что запросы не стоят в одной очереди.
На VPS есть важная оговорка. Вы получаете не физический диск, а виртуальный кусок общего хранилища, и хостер почти всегда ограничивает его скорость, чтобы один клиент не мешал остальным. «NVMe» с жёстким лимитом может работать медленнее, чем хороший SSD без лимита. Поэтому слово в тарифе — повод выбрать, а не гарантия, и диск стоит проверить в первый день. Как это сделать, покажу ниже.
Насколько NVMe дороже
Почти не дороже. Я сравнивал тарифы с одинаковой памятью у одного и того же хостера: брал самый дешёвый с NVMe и самый дешёвый с SSD и смотрел разницу, данные каталога accsly на 27 октября 2026 года. Таких пар нашлось от 88 до 236 хостеров в зависимости от объёма памяти.
При 2 ГБ памяти NVMe в середине выборки дороже на 45 ₽ в месяц, это около 8%. При 4 и 8 ГБ — примерно на 80 ₽, или 7–10%. За год переплата выходит 500–1 000 ₽. При этом у 40–50% хостеров с тарифами на 2–8 ГБ NVMe стоит столько же или дешевле SSD. Похоже, многие хостеры уже перевели на NVMe основное железо, а SSD остались в старых линейках, которые не всегда дешевле.
Подвох в другом: у NVMe-тарифов обычно меньше места. При 2 ГБ памяти середина по объёму диска — 30 ГБ на NVMe против 40 ГБ на SSD, при 4 ГБ — 60 против 75 ГБ. Для сайта с большой медиатекой или для хранения резервных копий на самом сервере это может решить дело в пользу SSD.
NVMe сейчас встречается в 40% тарифов каталога, а среди серверов в России — в 52%. Подборка: VPS с NVMe. Если нужен дешёвый объём под архивы и копии, а скорость не важна, есть и тарифы на жёстких дисках: VPS с HDD.
Когда сайт почувствует NVMe
Возьмём интернет-магазин на WooCommerce с 20 тысячами товаров и базой на 3 ГБ на сервере с 4 ГБ памяти. База в память целиком не помещается, поэтому фильтры по каталогу, поиск и оформление заказа будут читать диск. Здесь NVMe ускорит самые медленные страницы, и это стоит своих 80 ₽. Тарифы под такие задачи: VPS для интернет-магазина и VPS для Битрикса.
Вторая ситуация — много записи. Каждое подтверждённое изменение в MySQL или PostgreSQL по умолчанию сбрасывается на диск командой синхронизации, и сервер ждёт, пока диск подтвердит запись. Сайт с активными комментариями, логированием действий, очередями задач или сессиями в базе упирается именно в это. Для таких проектов полезно смотреть подборку VPS для баз данных.
А для сайта-визитки или блога на WordPress с кешем страниц разница уйдёт в погрешность. Лучше потратить деньги на память или на сервер ближе к посетителям. Подборка: VPS для WordPress.
Какой диск вам выдали на самом деле
Внутри виртуальной машины тип физического диска обычно не виден. Команда
lsblk -d -o NAME,ROTA,SIZE,MODEL
покажет диск с именем вроде vda или sda и пустой моделью. Столбец ROTA со значением 0 означает, что система считает диск не жёстким, но и это хостер может задать как угодно. Имя nvme0n1 встречается, когда хостер отдаёт машине виртуальный NVMe, однако и оно ничего не говорит о реальной скорости. Узнать правду можно только тестом.
Проверка диска: fio и как читать результат
Самый точный инструмент — fio. На Ubuntu и Debian он ставится командой apt install fio. Запускайте тесты на новом сервере, пока на нём нет рабочего сайта: они нагружают диск. Каждый тест создаёт файл на 1 ГБ, так что проверьте, что место есть.
Тест 1. Задержка одной операции. Это ближе всего к тому, что чувствует сайт:
fio --name=lat --filename=/root/fio.test --size=1G --rw=randread --bs=4k \
--iodepth=1 --direct=1 --ioengine=libaio --runtime=30 --time_based
В выводе найдите строку clat в блоке read и в ней среднее значение avg, а ниже таблицу процентилей и строку 99.00th. Единицы указаны в скобках: usec — микросекунды, msec — миллисекунды. На хорошем диске среднее держится в пределах 100–300 микросекунд. Если оно около миллисекунды и выше, а 99-й процентиль уходит в десятки миллисекунд, диск перегружен или сетевой, и база данных будет тормозить при любом названии тарифа.
Тест 2. Сколько операций диск выдержит под нагрузкой.
fio --name=iops --filename=/root/fio.test --size=1G --rw=randrw --rwmixread=70 \
--bs=4k --iodepth=32 --direct=1 --ioengine=libaio --runtime=60 --time_based
Смотрите IOPS= в строках read и write. Для сайта и небольшого магазина хватает нескольких тысяч операций в секунду. Если тариф продаётся как NVMe, а сумма чтения и записи меньше 5–10 тысяч, хостер ограничил диск. Ровная круглая цифра, например ровно 10.0k при каждом запуске, тоже говорит о лимите.
Тест 3. Скорость синхронной записи. Так пишет база данных при каждом подтверждённом изменении:
fio --name=sync --filename=/root/fio.test --size=256M --rw=write --bs=4k \
--ioengine=sync --fsync=1 --runtime=30 --time_based
Нужен IOPS= в строке write: это число подтверждённых записей в секунду. Тысяча и больше — хорошо, база будет записывать изменения без ожидания. Если получается меньше 200, каждое сохранение заказа или комментария будет ждать диск.
Ключ --direct=1 в первых двух тестах обязателен. Без него fio измеряет кеш в памяти, и результат получается завышенным в разы. После тестов удалите файл: rm /root/fio.test.
Быстрая проверка через dd, если fio нет
Утилита dd есть в любой системе. Она грубее, зато не требует установки. Последовательная запись:
dd if=/dev/zero of=/root/dd.test bs=1M count=1024 oflag=direct
В последней строке вывода будет скорость. Больше 550 МБ/с обычный SATA SSD выдать не может, так что такие цифры говорят о NVMe или о быстром хранилище. Меньше 200 МБ/с для «NVMe» — повод спросить хостера о лимитах. Но помните, что последовательная запись для сайта почти не важна: так копируют большие файлы, а не обрабатывают запросы.
Синхронная запись мелкими блоками, ближе к работе базы данных:
dd if=/dev/zero of=/root/dd.test bs=4k count=2000 oflag=dsync
Разделите 2 000 на число секунд из вывода, и получится, сколько записей в секунду выдерживает диск. Если dd закончил за одну-две секунды, это тысяча записей в секунду и больше, всё хорошо. Если думал 10–20 секунд, каждая запись занимает 5–10 мс, и база данных будет это чувствовать. После проверки: rm /root/dd.test.
Как не ошибиться с результатами
Прогоните тесты два-три раза в разное время, например днём и поздно вечером. Если результат скачет в разы, диск делят с активными соседями, и в часы пик сайт будет работать медленнее. Сравнивайте серверы одними и теми же командами: цифры разных утилит и разных настроек между собой не сопоставимы.
Делайте это в первые дни, пока действует возврат денег. Тарифы с такой возможностью — в подборке VPS с возвратом денег. Проверка сети и процессора разобрана в статье как проверить скорость VPS, а остальные параметры тарифа — в статье как выбрать VPS.