Хостинг на SSD NVME быстрых дисках
Ранее мы запустили новые тарифы Wordpress хостинга на SSD NVME дисках, теперь на них запустили VIP хостинг. Расскажем подробнее, чем SSD NVME отличается от обычных SSD дисков.
Мы стараемся применять для хостинга самые современные из доступных технологий, которые уже достаточно стабильны для их ежедневного использования. Помнится как около 9 лет назад в 2010-2011 годах, когда Hitachi и Seagate выпустили первые доступные SATA диски на 1000 Гб, приходилось заказывать их из соседней страны и передавать поездом, так как в Украине они ещё не продавались. И после успешных тестов мы начали использовать их на хостинге. В числе первых украинских хостеров мы также начали использовать SSD диски для виртуального хостинга, это было в 2015 году. Сейчас на рынок успешно вышли новые SSD NVME диски.
Так чем же отличаются SSD NVME диски от обычных SSD?
Первое и самое главное отличие – это интерфейс подключения. Более 15 лет в этой сфере не было кардинальных изменений, что устаревающие HDD диски, что более новые SSD все они подключались через SATA интерфейс. И если c HDD дисками это не было большой проблемой, так как ограничение в скорости было скорее не на уровне интерфейса подключения дисков, а на уровне физической скорости работы диска, то с SSD дисками интерфейс подключения становится “узким место” в скорости работы. Последняя, третья версия интерфейса SATA, который сейчас наиболее распространен имеет ограничение в скорости в 600 МБ/с. В то время как даже самые недорогие массовые SSD диски имеют скорость чтения уже 500 МБ/с, и больше, то есть уже интерфейс ограничивает скорость диска.
Чтобы обойти это ограничение родилась идея использовать для подключения SSD дисков интерфейс PCI Express, скорость которого колеблется от 8 до 32 ГБ/с, в зависимости от версии. Первые версии SSD дисков, которые можно было подключать через PCI Express обладали рядом проблем – с поддержкой со стороны ПО, с обновлением драйверов. Но с 2014 года, когда вышел стандарт NVMe 1.2, эти диски были уже вполне работоспособны и пригодны.
NVME сразу разрабатывался с учетом работы с твердотельным SSD дисками и поэтому имеет принципиальное отличие от AHCI (который использовался на SATA). NVME может поддерживать до 64 000 очередей команд, тогда как в AHCI было предусмотрено только 1 очередь из 32 команд.
Начиная с конца 2018 года цены на эти диски опустились до уровня, когда их применение становится оправданным для использования в Enterprise решениях.
Сравнение скорости SSD NVME и SSD SATA.
Мы провели несколько тестов, чтобы сравнить скорость, в рамках стандартных серверов для хостинга и сравнили 2 диска, один обычный SSD подключенный через SATA интерфейс и SSD NVME, включенный через PCI Express.
Делаем тест на IOPS – количество запросов в секунду.
Тест делаем с помощью утилиты fio, командой:
fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
Эта команда создает файл на 4 Гб и выполняет чтение и запись блоками, размером 4 кб в 64 потока.
Результат SSD на SATA:
Нас интересует показатель IOPS
Комбинированная запись: 5 343 операций / сек
Комбинированное чтение: 15 000 операций / сек
Результат SSD на NVME:
Комбинированная запись: 44 700 операций / сек
Комбинированное чтение: 134 000 операций / сек
Как видим разница результата на порядок.
Делаем ещё один тест на скорость чтения файла, размером в 1 Гб, проверяем командой dd, которая есть в любом дистрибутиве линукс. В данном случае мы проверяем скорость чтения файла, который предварительно создали.
dd if=/tmp/test.img of=/dev/null bs=1M count=1024
Результат SSD на SATA:
Результат SSD на NVME:
Как видим разница в скорости чтения в 6 раз, в пользу дисков SSD NVME.
На данный момент мы используем скоростные диски SSD NVME на двух линейках хостинга: хостинг для Wordpress и VIP хостинг. Но в ближайшее время планируем начать переход на новые диски и на обычном хостинге.