← На главную
При росте объема базы данных и увеличении количества активных пользователей в конфигурации «1С:Управление производственным предприятием» (УПП 1.3) часто возникает проблема существенного замедления ключевых операций — в частности, группового перепроведения документов. Проанализируем, как правильно подобрать аппаратную конфигурацию сервера и какие настройки СУБД MS SQL Server и операционной системы необходимо выполнить для достижения максимальной производительности.
Критерии выбора аппаратной конфигурации сервера
Рассмотрим основные требования к комплектующим при сборке сервера под совмещенные роли (терминальный сервер RDP, сервер приложений 1С и СУБД MS SQL на одной физической машине):
- Тактовая частота процессора (Single-Thread Performance): Операция проведения документа в платформах 1С выполняется строго в один поток на уровне одного рабочего процесса
rphost. Многопроцессорные системы с большим количеством ядер, но низкой базовой частотой (2.0–2.4 ГГц) покажут крайне низкую скорость проведения документов. Рекомендуется выбирать процессоры с максимальной производительностью на одно ядро и базовой частотой от 3.0–3.5 ГГц и выше. Однопроцессорная конфигурация на высокочастотном CPU часто оказывается быстрее и эффективнее для 25–30 пользователей, чем двухпроцессорная на низкочастотных ядрах.
- Объем и конфигурация оперативной памяти: Память — ключевой ресурс при совмещении всех служб. Для работы 25–30 RDP-пользователей (из расчета 0.5–0.7 ГБ на сессию), работы сервера приложений 1С и кэша MS SQL требуется минимум 64–128 ГБ ОЗУ. Недостаток памяти приведет к вытеснению процессов СУБД и 1С в файл подкачки на диске, что вызовет сильные зависания.
- Дисковая подсистема и RAID-контроллер: Самым узким местом при работе с базами данных является скорость случайной записи и чтения.
- Необходимо использовать исключительно серверные SSD (Enterprise) с высокими показателями надежности и ресурса перезаписи (DWPD от 1 и выше). Использование обычных десктопных SSD недопустимо, так как они быстро перегреваются при постоянной записи журналов транзакций и сбрасывают скорость.
- Для максимальной скорости и отказоустойчивости рекомендуется формировать массив RAID 10 из SSD под базы данных и логи СУБД вместо обычного RAID 1.
- Обязательно наличие полноценного аппаратного RAID-контроллера с энергонезависимой кэш-памятью (Battery/Flash-Backed Write Cache). Это позволяет включить режим кэширования записи
Write-Back, ускоряя операции транзакций в разы.
Тонкая настройка MS SQL Server под задачи 1С
Даже на самом мощном железе неоптимизированный MS SQL Server может создавать задержки при групповой обработке документов. Разберем по шагам ключевые параметры СУБД:
- Ограничение параллелизма (MAXDOP): По умолчанию MS SQL пытается распараллелить проведение документа на несколько ядер, из-за чего возникают ожидания ресурсов
CXPACKET и блокировки. Необходимо ограничить параметр Max Degree of Parallelism до значения 1, чтобы каждая транзакция выполнялась последовательно на одном ядре без накладных расходов на синхронизацию.
- Включение мгновенной инициализации файлов (Instant File Initialization): При автоувеличении базы данных или журнала транзакций MS SQL без этой настройки приостанавливает работу и зануляет выделяемое дисковое пространство. Для устранения пауз необходимо предоставить учетной записи службы MS SQL право в локальной политике безопасности ОС:
Выполнение задач по обслуживанию томов (Perform Volume Maintenance Tasks).
- Настройка лимита памяти (Max Server Memory): Чтобы СУБД не забрала всю оперативную память сервера, жестко ограничим максимальный объем памяти для MS SQL. Если на сервере 64 ГБ ОЗУ, отделим примерно 12–16 ГБ под ОС и RDP-сессии, 12–16 ГБ под сервер 1С, а оставшиеся ~32–36 ГБ зафиксируем в параметре
Max Server Memory.
- Оптимизация временной базы tempdb: База
tempdb активно используется платформой 1С для временных таблиц. Выделим для tempdb несколько файлов данных одинакового размера (соответственно числу физических ядер процессора, обычно от 4 до 8) и разместим их на самом быстром SSD-накопителе.
- Модель восстановления: Если для базы не требуется точечное восстановление на любую секунду дня, установим простую модель восстановления (
Simple), чтобы журнал транзакций не разрастался до огромных размеров и не нагружал диски.
Оптимизация настроек ОС и платформы 1С
Проанализируем параметры операционной системы и кластера 1С, влияющие на быстродействие:
- Схема электропитания Windows и BIOS: По умолчанию в серверах включены функции энергосбережения. Поскольку проведение документов — это кратковременные пиковые нагрузки, процессор не успевает повысить частоту. Переведем схему электропитания Windows Server в режим
Максимальная производительность (High Performance) и отключим состояния энергосбережения ядер (C-States) в BIOS.
- Протокол взаимодействия Shared Memory: Если MS SQL и сервер 1С размещены на одном физическом сервере, настроим подключение к базе данных через локальную память (
Shared Memory) вместо сетевого протокола TCP/IP, что снизит задержки межпроцессного обмена.
- Замер производительности и поиск медленных запросов: Перед приобретением нового оборудования рекомендуется выполнить замер производительности через конфигуратор 1С или использовать специализированные тесты производительности (например, тест Гилева). Это позволит выявить конкретные тяжелые запросы в коде проведения документов, исправление которых может дать существенный прирост скорости даже на текущем сервере.
- Обслуживание копий баз: В тестовых и дублирующих базах данных обязательно отключим регламентные и фоновые задания, а также журнал регистрации, чтобы они не отнимали ресурсы у рабочей базы.