При проектировании аппаратной части для сервера 1С, особенно если речь идет о совмещении старой платформы 1С 7.7 на MSSQL и современных файловых баз 1С 8.3, системный администратор сталкивается с вызовом: как выжать максимум производительности из ограниченного количества дисковых слотов. В данной статье мы проанализируем оптимальные конфигурации дисковой подсистемы на базе NVMe-накопителей, разберем архитектурные нюансы RAID-массивов и выясним, как избежать «бутылочного горлышка» в транзакционных системах.
Рассмотрим сценарий, когда у нас имеется физический сервер с 8 слотами, из которых 2 уже заняты под систему, а остальные 6 планируется использовать под данные 1С и терминальные сессии для 60 пользователей. Основная нагрузка ложится на MSSQL (база 7.7) и несколько файловых баз 1С 8.3.
Существует три основных подхода к организации пространства на NVMe:
MSSQL, второй — под файлы данных mdf, третий — под файловые базы. Однако это снижает общую гибкость управления объемом.Важный вывод: Для систем 1С, чувствительных к скорости блокировок (особенно 7.7), RAID 10 является приоритетным. Он обеспечивает минимальное время отклика, что критично при массовой записи в таблицы журналов и итогов.
Даже самые быстрые диски NVMe не покажут своего потенциала без правильной настройки файловой системы и СУБД. Разберем шаги, которые необходимо выполнить при развертывании MSSQL.
Во-первых, проанализируем размер кластера файловой системы NTFS. По умолчанию Windows предлагает 4 КБ, однако для SQL-сервера стандартом является 64 КБ. Это позволяет операционной системе считывать данные более крупными блоками, соответствующими экстентам MSSQL, что значительно ускоряет выполнение тяжелых отчетов.
Во-вторых, необходимо уделить внимание базе TempDB. Рассмотрим рекомендации по ее настройке:
TempDB на самом быстром логическом диске (в нашем случае это NVMe RAID 10).TempDB на несколько файлов данных (обычно количество файлов должно соответствовать количеству ядер процессора, но не более 8). Это снизит конкуренцию за страницы распределения данных (PFS, GAM).Проанализируем, почему пользователи часто жалуются на тормоза 1С 7.7 даже на мощном железе. Движок версии 7.7 использует устаревшие механизмы блокировок. При использовании RAID 5 или RAID 6, процесс записи каждой транзакции замедляется из-за необходимости пересчета четности. На 60 пользователях это создает огромную очередь к дисковой подсистеме.
Если мы используем RAID 10, задержка записи (Disk Write Latency) будет минимальной. Дополнительно рекомендуется настроить SQL-сервер так, чтобы файлы транзакционных логов (ldf) имели достаточный размер и не расширялись автоматически слишком часто, так как операция Autogrow на лету «подвешивает» работу базы.
Поскольку наш сервер совмещает роли 1С и терминального сервера (RDS), мы столкнемся с проблемой «взрывной» нагрузки на диски в моменты начала рабочего дня. Когда 60 человек одновременно входят в систему, происходит массовое чтение профилей, загрузка кэша 1С и автозапуск приложений.
Для решения этой задачи рассмотрим технологию User Profile Disks (UPD) или использование перемещаемых профилей. Хранение этих данных на NVMe-массиве нивелирует тормоза интерфейса. Также крайне важно зафиксировать размер файла подкачки (pagefile.sys) и расположить его на основном скоростном массиве, чтобы избежать фрагментации при нехватке оперативной памяти.
Помним, что RAID — это не бэкап, а средство обеспечения непрерывности работы. Для системы на NVMe мониторинг состояния дисков через SMART обязателен. Современные SSD имеют ограниченный ресурс записи (TBW), и в RAID-массиве диски из одной партии могут выйти из строя почти одновременно.
Рекомендуемая схема бэкапа для данной конфигурации:
Многие задаются вопросом: а не проще ли арендовать «облако»? Проанализируем ситуацию. В облаке вы арендуете виртуальные ресурсы, где IOPS (количество операций ввода-вывода) часто лимитированы программно. Чтобы получить производительность, аналогичную локальному массиву из 4-6 NVMe, придется приобретать премиальные тарифы, стоимость которых за 1-2 года превысит стоимость собственного сервера.
Собственный физический сервер (Bare Metal) дает полный контроль над очередями диска и гарантирует, что «соседи» по виртуализации не заберут вашу дисковую производительность в пиковые моменты. Для 1С 7.7, которая крайне чувствительна к малейшим микро-задержкам, физический сервер с локальным NVMe RAID 10 является наиболее стабильным решением.
Подводя итог нашему анализу, предложим следующую структуру распределения дисков:
Шаг 1: Системный раздел. Используем 2 диска в RAID 1. Логически разбиваем его на диск C: (ОС, софт) и диск D: (пользовательские данные, не критичные к скорости, например, архивы документов).
Шаг 2: Массив данных. Оставшиеся 4-6 слотов забиваем NVMe-накопителями и собираем в RAID 10. Это даст нам максимальный IOPS и отказоустойчивость.
Шаг 3: Логическая разметка массива данных.
mdf и ldf файлы MSSQL (размер кластера 64 КБ).1С 8.3 (размер кластера 4 или 8 КБ).TempDB и кэши пользователей терминала.Такой подход обеспечит комфортную работу 60 пользователей и позволит системе беспроблемно функционировать до момента планового перехода на 1С:ERP или другие современные конфигурации.