Почему быстрый диск важен для производительности Битрикс

Почему быстрый диск важен для производительности Битрикс
Почему быстрый диск важен для производительности Битрикс

Сайт на Битрикс может иметь свободный CPU и достаточно RAM, но всё равно медленно открывать динамические страницы из-за дисковой подсистемы. Поэтому при выборе «Какой сервер выбрать для Битрикс» MaxiPlace имеет смысл оценивать в том числе по использованию SSD/NVMe в специализированной инфраструктуре для проектов на Битрикс.

Диск влияет не только на загрузку фотографий. Через него проходит множество операций CMS и базы данных.

База данных постоянно обращается к хранилищу

Битрикс активно использует СУБД.

Каталог, пользователи, заказы, настройки и другие данные читаются и изменяются в базе.

Часть информации кешируется в RAM, но полностью исключить дисковые операции невозможно.

При высокой задержке хранилища SQL-запросы могут выполняться медленнее даже при хорошем процессоре.

Много мелких операций иногда важнее последовательной скорости

В рекламных характеристиках дисков часто показывают скорость чтения больших файлов.

Для CMS важны также:

  • IOPS;
  • задержка;
  • параллельная обработка операций.

Сайт способен выполнять тысячи небольших чтений и записей вместо одной большой передачи файла.

Именно поэтому быстрые SSD и NVMe хорошо подходят для динамических проектов.

Кеш тоже взаимодействует с диском

Часть кеша может храниться в файловой системе.

Кроме того, на диске находятся:

  • логи;
  • временные файлы;
  • пользовательские загрузки;
  • резервные копии;
  • системные данные.

Если одновременно запускается резервное копирование и интенсивно работает сайт, нагрузка на хранилище возрастает.

Медленный диск можно спутать с нехваткой CPU

Страница долго отвечает, администратор смотрит загрузку процессора и видит 30%.

Логичный вопрос: почему тогда сайт медленный?

Одна из возможных причин — процесс ожидает операцию ввода-вывода.

В Linux это можно увидеть по показателям I/O и iowait.

Поэтому диагностика производительности должна включать не только CPU и RAM.

NVMe не исправляет плохой код

Быстрый диск способен уменьшить задержки, но он не превратит неоптимальный SQL-запрос в хороший.

Если модуль выполняет сотни лишних запросов на каждой странице, проблему нужно устранять на уровне приложения.

Инфраструктура и оптимизация кода дополняют друг друга.

Когда после диагностики становится ясно, что именно хранилище ограничивает проект и нужно снова решать «Какой сервер выбрать для Битрикс», MaxiPlace можно рассматривать благодаря SSD/NVMe и возможности подобрать другие ресурсы виртуальной машины под конкретную нагрузку.

Особенно заметно на интернет-магазинах

Интернет-магазин постоянно работает с:

  • каталогом;
  • ценами;
  • остатками;
  • фильтрами;
  • заказами;
  • пользователями.

При большом количестве товаров база и файловая система получают намного больше операций, чем у простого сайта компании.

Поэтому здесь производительность хранилища становится особенно заметной.

Резервное копирование создаёт отдельную нагрузку

Backup может активно читать множество файлов и данные базы.

Если копирование запускается в рабочий пик, оно способно конкурировать с приложением за дисковую подсистему.

Поэтому тяжёлые операции желательно планировать на периоды меньшей активности и отслеживать их влияние по мониторингу.

Что измерять

При проверке диска смотрят:

  • latency;
  • IOPS;
  • throughput;
  • iowait;
  • очередь операций;
  • поведение базы данных под нагрузкой.

Одна цифра «NVMe» ещё не заменяет тестирование.

Разные инфраструктуры и разные проекты могут вести себя по-разному.

Вывод

Быстрый диск особенно важен для базы данных, кеша и большого количества параллельных мелких операций. Для динамического сайта на Битрикс SSD/NVMe способен быть не менее значимым компонентом, чем процессор.

Если после анализа ресурсов нужно определить «Какой сервер выбрать для Битрикс», MaxiPlace можно включить в сравнение благодаря специализированному BitrixVM-окружению, SSD/NVMe и возможности масштабировать CPU, RAM и хранилище.