Системные требования для 1С:ERP 2.4: выбор процессора, расчет памяти и оптимизация дисков

Системный администратор 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием IT и автоматизация бизнеса
← На главную

При развертывании тяжелых корпоративных систем на платформе «1С:Предприятие 8.3», таких как 1С:ERP Управление предприятием 2.4, системные администраторы и руководители проектов часто сталкиваются с жесткими ограничениями бюджета или предложениями ИТ-отдела использовать имеющееся «свободное» оборудование. Типичный сценарий — попытка запустить совмещенный сервер (СУБД, сервер приложений 1С и терминальный сервер RDP на одной физической машине) для обслуживания 20–25 активных пользователей.

В этой статье мы подробно проанализируем реальный кейс выбора оборудования, рассмотрим архитектурные особенности работы платформы 1С и MS SQL Server, рассчитаем реальную потребность в оперативной памяти и выясним, почему традиционные жесткие диски SAS больше не применимы в современных ERP-системах.

Анализ исходных данных и аппаратного выбора

ИТ-отдел компании предлагает под проект внедрения 1С:ERP 2.4 физический сервер в следующей комплектации:

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

Часть 1. Частота процессора против количества ядер: Xeon Gold 5115 vs Xeon Gold 5122

Для правильного выбора процессора под нужды 1С необходимо понимать специфику работы платформы «1С:Предприятие». Большинство критически важных операций в 1С (таких как проведение документов, расчет себестоимости, заполнение сложных аналитических отчетов) выполняются в один поток. Это означает, что производительность системы при обработке одной конкретной транзакции напрямую зависит от тактовой частоты одного ядра процессора и его микроархитектуры (показатель IPC — количество инструкций за такт).

Проанализируем предложенные процессоры с точки зрения 1С:

  1. Intel Xeon Gold 5115 (2.4 GHz, 10 ядер): Данный процессор имеет большое количество ядер, но очень низкую базовую частоту. При пиковых нагрузках однопоточный код 1С будет выполняться крайне медленно. В тесте производительности Гилева такой процессор покажет низкие результаты (ориентировочно 15–20 баллов), что приведет к постоянным жалобам пользователей на «зависание» интерфейса при проведении документов ERP.
  2. Intel Xeon Gold 5122 (3.6 GHz, 4 ядра): Этот процессор обладает высокой базовой частотой, что гарантирует отличную скорость выполнения однопоточных задач. Однако у него всего 4 физических ядра (8 логических потоков с включенным Hyper-Threading).

Выясним причину, почему 4 ядра — это критически мало для совмещенного сервера. Рассмотрим распределение ядер между службами при пиковой нагрузке:

Если мы выберем высокочастотный 4-ядерный Xeon Gold 5122 и оставим на нем терминальный сервер, система мгновенно зайдет в тупик (CPU starvation). Как только один пользователь запустит тяжелый отчет, а СУБД начнет выполнять регламентную операцию, процессор будет загружен на 100%, и все остальные 24 пользователя терминала увидят полностью заблокированный («зависший») интерфейс.

Вердикт по процессору: Выбирать необходимо однозначно Intel Xeon Gold 5122 (3.6 GHz), но при этом категорически запрещено запускать терминальный сервер (RDP) на этой же физической машине. Все пользователи должны работать через Тонкий клиент, установленный на их локальных компьютерах.

Часть 2. Расчет оперативной памяти и отказ от RDP

Рассмотрим, почему совмещение ролей сервера приложений, СУБД и RDP при наличии всего 64 GB оперативной памяти приведет к краху производительности. Проведем детальный расчет потребления ОЗУ для конфигурации 1С:ERP 2.4 на 25 пользователей.

Вариант А: Совмещенный сервер с терминальным доступом (RDP)

  1. Операционная система: ~4 GB.
  2. Сессии пользователей в RDP: В конфигурации ERP 2.4 одно рабочее место (запущенный клиент 1С) потребляет в среднем от 1 до 1.5 GB оперативной памяти. В пиковые моменты (формирование сложных отчетов, закрытие месяца) потребление может вырастать до 2–4 GB на один сеанс. Для 25 пользователей в терминале потребуется: 25 * 1.2 GB = 30 GB.
  3. Сервер приложений 1С: Рабочие процессы rphost сервера 1С также потребляют память под кэш метаданных, временные таблицы и сеансы пользователей. В среднем это еще около 500 MB на пользователя. Итого для 25 пользователей: 25 * 0.5 GB = 12.5 GB.
  4. СУБД (SQL Server): Для быстрой работы SQL-сервер должен держать наиболее часто запрашиваемые таблицы и индексы в своем буферном пуле (Buffer Pool) в оперативной памяти. Для базы ERP на 25 пользователей минимальный объем выделяемой под SQL памяти должен составлять не менее 16–24 GB.

Сложим все показатели: 4 GB (ОС) + 30 GB (RDP) + 12.5 GB (1С) + 16 GB (SQL) = 62.5 GB. Это идеализированный расчет впритык. При реальной эксплуатации нагрузка превысит физические 64 GB. Операционная система будет вынуждена непрерывно сбрасывать данные из ОЗУ в файл подкачки (pagefile.sys) на жесткий диск (процесс свопинга). Так как скорость чтения/записи дисков в тысячи раз ниже скорости оперативной памяти, вся система начнет сильно тормозить.

Вариант Б: Отказ от RDP в пользу Тонкого клиента

Если мы убираем терминальный сервер и переводим пользователей на локальный Тонкий клиент, структура потребления памяти кардинально меняется:

Ограничить аппетиты SQL Server по потреблению памяти можно с помощью следующего T-SQL скрипта (выполните его в SQL Server Management Studio):


EXEC sys.sp_configure N'show advanced options', N'1' RECONFIGURE WITH OVERRIDE;
GO
EXEC sys.sp_configure N'max server memory (MB)', N'32768' RECONFIGURE WITH OVERRIDE;
GO

Часть 3. Дисковая подсистема: SAS 15K против Enterprise SSD

ИТ-отдел предлагает использовать классический массив из 4-х жестких дисков SAS 15K. Разберем по шагам, почему это критическая ошибка, которая сделает невозможной комфортную работу в 1С:ERP 2.4.

Главным показателем производительности дисковой системы для баз данных является не линейная скорость чтения/записи (МБ/с), а количество операций ввода-вывода в секунду (IOPS) при случайном доступе блоками по 4 КБ и 8 КБ.

При проведении документов ERP активно перезаписывает таблицы регистров накопления и сведений, выполняет запись транзакционных логов (файлы .ldf в MS SQL) и интенсивно использует временную базу данных tempdb. Из-за нехватки IOPS диски SAS уйдут в постоянную 100% загрузку, увеличится время отклика (Disk Latency), СУБД начнет выстраивать запросы в очереди, что мгновенно приведет к появлению ошибок в 1С: «Время ожидания блокировки превышено».

Решение: Полностью откажитесь от магнитных дисков SAS 15K для хранения базы данных, логов транзакций и временных файлов tempdb. Вместо них необходимо установить твердотельные накопители класса Enterprise SSD (например, с интерфейсом NVMe или серверные SATA/SAS SSD с высоким ресурсом перезаписи — показатель DWPD не менее 3). Даже один бюджетный серверный SSD выдает от 50 000 до 80 000 IOPS на запись, что полностью решает проблему дисковых задержек.

Часть 4. Настройка Shared Memory для совмещенного сервера

Поскольку сервер приложений 1С и СУБД MS SQL Server будут функционировать на одной физической машине (без RDP), мы можем использовать механизм оптимизации межпроцессного взаимодействия — протокол Shared Memory (Общая память).

По умолчанию сервер 1С общается с SQL Server через сетевой протокол TCP/IP, даже если они установлены локально на одном компьютере. Это создает лишнюю нагрузку на сетевой стек операционной системы. Протокол Shared Memory позволяет процессу rphost общаться с процессом СУБД sqlservr.exe напрямую через оперативную память сервера, минуя сетевую карту и стек протоколов TCP/IP. Это дает прирост производительности при передаче больших объемов данных между СУБД и сервером приложений до 10–15%.

Выясним, как проверить, используется ли протокол Shared Memory. Для этого выполним в SQL Server Management Studio следующий запрос:


SELECT session_id, net_transport, client_net_address
FROM sys.dm_exec_connections;

В результатах запроса в колонке net_transport для подключений от сервера 1С должно быть указано значение Shared memory. Если там указано TCP, необходимо открыть SQL Server Configuration Manager, перейти в раздел SQL Server Network Configuration -> Protocols for MSSQLSERVER и убедиться, что протокол Shared Memory включен (Enabled).

Итоги и финальные рекомендации по конфигурации

Проанализировав все особенности работы 1С:ERP 2.4 на 20–25 пользователей, мы можем сформировать четкий план действий по доработке предложенной ИТ-отделом конфигурации сервера:

  1. Выбор процессора: Выбираем только высокочастотный Intel Xeon Gold 5122 (3.6 GHz). Процессор Xeon Gold 5115 с частотой 2.4 GHz не обеспечит комфортную скорость работы пользователей из-за однопоточности платформы 1С.
  2. Отказ от RDP: Полностью исключаем терминальный сервер с этой машины. Устанавливаем пользователям локальные тонкие клиенты. 64 GB оперативной памяти оставляем исключительно под нужды операционной системы, сервера приложений 1С и СУБД SQL Server.
  3. Замена дисков: Жесткие диски SAS 15K утилизируем или оставляем под резервные копии (бэкапы). Для рабочей базы данных, файлов логов (LDF) и базы tempdb приобретаем массив из серверных Enterprise SSD (рекомендуется настроить RAID-1 или RAID-10 для отказоустойчивости).
  4. Настройка СУБД: Обязательно ограничиваем максимальное потребление оперативной памяти для SQL Server на уровне 32 GB, чтобы избежать нехватки ОЗУ для рабочих процессов 1С rphost, и включаем протокол Shared Memory для ускорения обмена данными.
← На главную