Диск
Что такое NVMe?
NVMe is a storage protocol that connects solid-state drives directly over PCIe, reaching roughly 500,000 random IOPS with sub-100-microsecond latency. Its deep parallel queue model is architecturally different from SATA, which inherits a single-queue design intended for mechanical disks.
Почему NVMe важен
Его модель с глубокими параллельными очередями архитектурно отличается от SATA, которая унаследовала конструкцию с одной очередью, предназначенную для механических дисков. Для приложений, работающих с базами данных, разрыв в случайных операциях ввода-вывода — это та разница, которую пользователи действительно ощущают.
NVMe на практике
Когда вы предоставляете NVMe-инстанс, первое, на что вы смотрите, — это глубина очереди вашей дисковой нагрузки. Коробка на SATA выдохнется на нескольких тысячах IOPS под нагрузкой; NVMe держит примерно 500 000 случайных IOPS с задержкой менее 100 микросекунд. Перестройте ваши тесты sysbench и fio на randread и randwrite, а не на последовательную пропускную способность, и посмотрите на разницу в коммитах базы данных. Если вы оптимизируете под размер блока SAS-диска или игнорируете настройки планировщика I/O, вы оставляете большую часть возможностей железа неиспользованной. Ошибётесь — и ваша задержка вырастет в сто раз на нагрузках, которые реально задевают диск.
Что люди часто понимают неправильно в отношении NVMe
Люди считают, что NVMe — это просто более быстрый SSD, и выбирают план по размеру в ГБ, а не по IOPS. Исправление: отличие NVMe — это параллельная модель очередей, а не только сырая пропускная способность. Огромный SATA-диск всё равно упрётся в одинарную очередь на случайном I/O; диск меньшего размера на NVMe обойдёт его для нагрузок баз данных. Размер важен, но для задач, чувствительных к задержке, метрика, которая вам аукнется, если её игнорировать, — это IOPS.
NVMe — частые вопросы
Каких случайных IOPS достигает NVMe?
Примерно 500 000 случайных IOPS, согласно опубликованному определению. Это примерно в тысячу раз больше, чем у типичного SATA SSD. Задержка менее 100 микросекунд означает, что при маленьких случайных чтениях и записях вы не ждёте механику диска или одиночную SATA-очередь — единственный путь — это контроллер и шина PCIe.
Нужен ли мне NVMe для веб-сайта?
Только если ваша нагрузка связана с интенсивным произвольным вводом-выводом, например, база данных или кэш. Раздача статических файлов или сайт с низким трафиком не заметят разницы между NVMe и SATA. Разрыв проявляется при длительных смешанных нагрузках, когда единственная очередь SATA насыщается и задержки возрастают. Если вы запускаете Postgres или Redis, NVMe позволит поддерживать низкие хвостовые задержки.
Где встречается NVMe
- Насколько NVMe быстрее, чем SATA SSD? Примерно в пять раз больше случайных IOPS — около 500 000 против 90 000 — и примерно в пять раз ниже задержка: менее 0,1 мс против примерно 0,5 мс. Последо…
- Сколько стоит VPS? Пригодный для работы VPS начинается примерно от $4 в месяц за 1 vCPU, 1 ГБ ОЗУ и 20 ГБ NVMe-хранилища. Продакшн-инстанс с выделенными ядрами, 8 ГБ ОЗУ и 16…
- Какой самый дешёвый VPS, который действительно пригоден для работы? Примерно за $4 в месяц вы получаете 1 vCPU, 1 ГБ ОЗУ и 20 ГБ NVMe на настоящей KVM-виртуализации. Этого действительно достаточно для WireGuard VPN, DNS-рез…
- NVMe против SSD против HDD для VPS NVMe достигает примерно 500 000 случайных IOPS с задержкой менее 100 микросекунд; SATA SSD — около 90 000 IOPS; HDD на 7 200 об/мин — около 150. Для всего,…
- Продакшн-стек Docker Compose на VPS Рабочий продакшн-стек — это Caddy для автоматических TLS, ваше приложение, PostgreSQL и Redis, описанные в одном Compose-файле с именованными томами и пров…
- Можно ли запускать Docker на VPS? На KVM VPS — да, без ограничений: устанавливайте Docker Engine из официального репозитория, и всё работает, включая buildx, Compose и Docker-in-Docker. На …
Больше из раздела «диск»
- IOPS
- IOPS показывает, сколько отдельных операций чтения или записи устройство хранения выполняет в секунду.
- RAID 10
- RAID 10 зеркалирует данные на парах дисков и чередует по зеркалам, обеспечивая как избыточность, так и высокую производительность, но за счёт половины полезной ёмкости.
- Snapshot
- Снимок — это копия диска виртуальной машины на определённый момент времени, создаваемая мгновенно и хранящаяся на той же инфраструктуре.