Как ускорить время выполнения операций в ЗУП 3 КОРП и к каким показателям стремиться

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

Производительность системы 1С:Зарплата и управление персоналом (ЗУП) 3.1 КОРП часто становится предметом споров между пользователями, руководством и ИТ-отделом. Когда бизнес требует выполнения любой операции "за одну секунду", системному администратору и программисту важно иметь под рукой реальные эталонные показатели и понимать, какие факторы сильнее всего тормозят систему. В этой статье мы проанализируем реальные замеры производительности, выясним влияние ограничений на уровне записей (RLS) и определим требования к серверному оборудованию.

Реальные показатели производительности: замеры пользователей

Для начала рассмотрим, какие цифры считаются "нормальными" или "типичными" в реальных внедрениях ЗУП 3 КОРП при работе в клиент-серверном варианте (тонкий клиент). Проанализируем средние значения для ключевых операций:

  1. Открытие меню и списков: Переход в раздел Кадровые отчеты может занимать от 2 до 5 секунд. Открытие формы списка Штатные сотрудники в среднем длится от 5 до 13 секунд в зависимости от объема данных и сложности настроек прав доступа.
  2. Формирование отчетов: Отчет Штатные сотрудники — один из самых тяжелых. На объеме в 3700 строк без ограничений доступа (RLS) он может формироваться около 1 минуты 40 секунд. При включении RLS даже на меньшей выборке (например, 200 строк) время может составлять до 40 секунд.
  3. Работа с документами: Проведение документов Отпуск или Больничный лист в норме должно занимать от 2 до 4 секунд. Расчет документа — от 2 до 6 секунд.

Если ваши показатели значительно превышают эти цифры (например, проведение отпуска длится 10-15 секунд), это явный сигнал к необходимости оптимизации инфраструктуры или программных настроек.

Влияние механизма RLS на быстродействие

Одной из самых ресурсоемких функций в ЗУП 3 КОРП является ограничение доступа на уровне записей (RLS). Выясним причину, почему эта настройка замедляет систему даже для тех пользователей, которым разрешено всё (например, руководители с полным доступом к организациям и физлицам).

Рассмотрим ситуацию: при отключении настройки RLS отчет формируется за 40 секунд, а при включении — за 140 секунд для того же пользователя. Это происходит потому, что платформа 1С при включенном RLS модифицирует практически каждый SQL-запрос, добавляя в него условия проверки прав через соединения с таблицами прав доступа. Даже если итоговый результат проверки — "разрешено", СУБД тратит значительное время на выполнение более сложных планов запросов.

Рекомендации по оптимизации RLS:

Анализ оборудования и тест Гилева

Если система работает медленно, первым шагом должен стать замер производительности с помощью теста Гилева (TPC-1C). Рассмотрим результаты: если тест показывает 10-15 баллов ("попугаев"), это крайне низкий показатель для систем уровня КОРП. На современном оборудовании реально достичь 40-60 баллов.

Проанализируем типичную конфигурацию сервера, которая часто дает низкие результаты:

Сервер приложений: Xeon E5-2660v3 2.6GHz, SQL: Xeon E5-2680v2 2.8GHz

Основные проблемы такой связки:

  1. Низкая тактовая частота: Для 1С критически важна производительность на одно ядро. Процессоры с частотой ниже 3.0-3.5 ГГц в базовом режиме не могут обеспечить мгновенную реакцию интерфейса в ЗУП 3.
  2. Разделение серверов: В базах объемом до 50-100 Гб разделение сервера 1С и сервера SQL на разные физические или виртуальные хосты часто вредит производительности из-за сетевых задержек (Latency).

Для достижения целевых показателей (формирование отчетов за 15-20 секунд вместо 100) рекомендуется переход на процессоры с высокой частотой, например, линейку Intel Xeon E-2278G или аналоги с частотой в Turbo Boost выше 4.5 ГГц.

Оптимизация виртуальной среды (VMware / Hyper-V)

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

Разберем по шагам, что необходимо проверить системному администратору:

  1. Энергопотребление (Power Management): В BIOS физического сервера и в настройках гипервизора должен быть установлен режим Maximum Performance. Если процессор "засыпает" или снижает частоту для экономии энергии, 1С будет тормозить на каждой операции.
  2. Резервирование ресурсов (Reservation): Для виртуальной машины с сервером 1С необходимо жестко зарезервировать всю оперативную память и все выделенные ядра процессора. Это исключает влияние "соседей" по виртуальному хосту.
  3. Конфигурация памяти: Убедитесь, что виртуальная машина не выходит за пределы одного NUMA-узла (одного физического процессора). Пересечение границ NUMA замедляет работу с памятью на 20-30%.

Технические настройки MS SQL Server

Для ускорения тяжелых отчетов в ЗУП 3 (таких как отчет по штатной расстановке) крайне важна настройка СУБД. Проанализируем ключевые параметры:

Заключение

Стремиться к выполнению всех операций в ЗУП 3 КОРП за 1 секунду — задача амбициозная, но не всегда достижимая из-за самой архитектуры конфигурации (сложные расчеты, множество регистров). Однако, сократить время ожидания в 3-5 раз вполне реально. Для этого необходимо:

  1. Обеспечить результат теста Гилева не менее 35-40 баллов.
  2. Использовать процессоры с максимально возможной тактовой частотой (от 3.5 ГГц и выше).
  3. Настроить "Производительный" режим RLS и актуализировать статистику SQL.
  4. Минимизировать задержки между сервером 1С и СУБД, по возможности разместив их на одном хосте (Shared Memory).

Соблюдение этих технических условий позволит кадровикам и бухгалтерам комфортно работать даже с большими объемами данных в ЗУП 3 КОРП.

← На главную