Ситуация, когда мощный по техническим характеристикам сервер демонстрирует крайне низкую производительность в 1С:Предприятие, встречается довольно часто. Проанализируем типичный случай: сервер с 64 Гб оперативной памяти и процессорами Intel Xeon работает медленно, а открытие документа «Начисление зарплаты» на 2000 сотрудников занимает более 20 минут. Разберем по шагам, какие узкие места существуют в такой конфигурации и как их устранить.
Первое, на что стоит обратить внимание — это тактовая частота процессора. В рассматриваемом случае используются процессоры E5-2620 v4 с базовой частотой 2.1 ГГц. Для серверных решений 1С, особенно для конфигурации «Зарплата и кадры государственного учреждения» (ЗУП 3.1), критически важна производительность на одно ядро. Частота 2.1 ГГц является крайне низкой для ресурсоемких расчетов зарплаты.
Вторая серьезная проблема — дисковая подсистема. Использование обычных HDD-дисков со скоростью вращения 7200 об/мин в зеркальном рейде (RAID 1) не обеспечивает необходимых показателей IOPS (количества операций ввода-вывода в секунду). Для базы данных SQL, которая постоянно производит запись и чтение во временные таблицы tempdb, такие диски становятся главным тормозом системы.
Проанализируем работу процессора. Современные серверные процессоры по умолчанию работают в режимах энергосбережения, что мешает им мгновенно выходить на максимальную мощность при появлении задачи от 1С. Рассмотрим необходимые действия:
Maximum Performance. Отключите все технологии энергосбережения, такие как C-States и P-States.Настройки SQL Server по умолчанию редко подходят для эффективной работы 1С. Разберем основные параметры, которые необходимо изменить:
Параметр MAXDOP (Max Degree of Parallelism). По умолчанию SQL пытается распараллелить выполнение одного запроса на все доступные ядра. В 1С это часто приводит к обратной ситуации: время на синхронизацию потоков превышает время самого расчета. Выясним причину долгого ожидания и установим значение MAXDOP = 1. Это заставит каждый отдельный запрос выполняться в рамках одного ядра.
Ограничение памяти. SQL Server склонен захватывать всю доступную оперативную память. Если у вас 67 Гб ОЗУ, необходимо оставить запас для операционной системы и процессов 1С (rphost). Рекомендуется установить предел Max Server Memory на уровне 45–50 Гб.
Выполним настройку через SQL-скрипт:
EXEC sys.sp_configure N'show advanced options', N'1';
RECONFIGURE;
EXEC sys.sp_configure N'max degree of parallelism', N'1';
RECONFIGURE;
EXEC sys.sp_configure N'max server memory (MB)', N'51200';
RECONFIGURE;
В 1С:ЗУП при расчете зарплаты активно используются временные таблицы. Проанализируем состояние базы tempdb. Если она расположена на тех же медленных HDD, что и основная база, быстродействия не будет.
Рекомендация: Перенесите файлы tempdb на самый быстрый диск (в идеале — отдельный NVMe или SSD). Также разделите tempdb на несколько файлов одинакового размера (обычно количество файлов должно соответствовать количеству физических ядер процессора, но не более 8).
Посмотрим на специфические настройки самой программы. В версии 3.1 реализовано множество механизмов, которые могут замедлять работу при большом количестве сотрудников.
Очередь пересчетов. Если там накопились тысячи записей, система будет постоянно пытаться обработать их в фоновом режиме. Иногда полезно очистить этот регистр, если данные в нем не актуальны.В рассматриваемом вопросе используется платформа 8.3.11 и версия ЗУП 3.1.6. Это очень старые релизы. Рассмотрим подробнее, почему обновление критично:
Shared Memory, который ускоряет взаимодействие между сервером приложений 1С и SQL-сервером, если они установлены на одной машине.Для решения проблемы «жутких тормозов» мы рекомендуем придерживаться следующего алгоритма:
1. Замена дисков на SSD: Это даст самый ощутимый прирост производительности, так как снимет проблему очередей к дисковой подсистеме.
2. Настройка процессора: Включение режима максимальной производительности в BIOS и Windows позволит использовать все 2.1–3.0 ГГц мощности Xeon без задержек.
3. Лимитирование SQL: Установка MAXDOP = 1 и ограничение памяти предотвратят конфликты ресурсов между SQL и процессами 1С.
4. Программная оптимизация: Отключение автоматического пересчета в ЗУП и обновление платформы до актуальной версии позволит системе работать более эффективно с программной точки зрения.