Экспертный кейс. 40 000 перерасчётов за 43 минуты в 1С:ЗУП КОРП

20.07.26

База данных - HighLoad оптимизация

Недавно мы успешно завершили масштабное нагрузочное тестирование (НТ) корпоративной информационной системы на базе «1С:Зарплата и управление персоналом 8 КОРП» редакции 3.1. Проведенные испытания подтвердили исключительную стабильность и производительность решения при моделировании работы сверхкрупного предприятия в условиях пиковых нагрузок. Уникальность данного проекта заключается в подтверждении масштабируемости системы 1С:ЗУП КОРП, которая является комплексным решением для автоматизации всех HR-процессов: от подбора и обучения до расчета зарплаты и охраны труда.

Как масштабировалась 1С:ЗУП КОРП под экстремальной нагрузкой

 

30 000

табельных номеров

40 000

перерасчётов

5 122 сек.

результат стенда № 1

2 626 сек.

результат стенда № 2

 

Нагрузочные испытания систем расчёта заработной платы редко ограничиваются проверкой времени открытия формы или проведения одиночного документа. На крупных предприятиях критичны пакетные операции: массовые перерасчёты отпусков и командировок, корректировки начислений за предыдущие периоды и последующий расчёт заработной платы по десяткам тысяч сотрудников.

Именно такой сценарий был воспроизведён нашими экспертами при нагрузочном тестировании (НТ) «1С:Зарплата и управление персоналом 8 КОРП» редакции 3.1. В рамках испытаний система выполнила 40 000 перерасчётов и расчёт заработной платы на массиве из 30 000 табельных номеров.

Тестирование проводила компания «ИТ-Экспертиза». Перед специалистами стояли две задачи, которые беспокоили заказчика больше всего:

  1. Проверить, укладывается ли комплекс массовых расчётных операций в установленный целевой интервал.
  2. Оценить, насколько результат зависит от аппаратной конфигурации и как система масштабируется при переходе на более производительную инфраструктуру.

Особенность теста: не виртуальные клики, а тяжёлый расчётный сценарий

В данном случае нагрузочный профиль строился не вокруг количества одновременно открытых сеансов. Объектом измерения стала последовательность ресурсоёмких операций, характерных для закрытия расчётного периода в крупной организации.

Тестовый сценарий включал:

  • перерасчёт отпусков по 10 000 табельных номеров (ТН);
  • перерасчёт командировок по 10 000 табельных номеров после выплаты годовой премии;
  • перерасчёт заработной платы по 20 000 табельных номеров вследствие корректировки табеля за предыдущие месяцы;
  • расчёт заработной платы по 30 000 табельных номеров.

Таким образом, проверялась производительность не отдельных транзакций, а законченного расчётного цикла, создающего длительную и неоднородную нагрузку на серверы «1С:Предприятия» и СУБД. Для 1С:ЗУП КОРП это более показательный сценарий, чем синтетическая генерация большого количества простых пользовательских действий.

Программный контур

Испытания проводились на следующем стеке:

  • «1С:Зарплата и управление персоналом 8 КОРП», редакция 3.1. Точная версия конфигурации: 3.1.36.45;
  • Платформа «1С:Предприятие 8.3» версии 8.3.27.1786;
  • Postgres Pro 17.4;
  • Astra Linux 1.7 на виртуальных машинах;
  • Proxmox в качестве гипервизора;
  • Apache;
  • NVMe-накопители.

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

Два стенда с разной серверной архитектурой

Стенд № 1

Сервер СУБД был построен на Intel Xeon Platinum 8260:

 

Параметр

Значение

Частота процессора

2 400 МГц

Количество ядер, включая виртуальные

96

Оперативная память

512 ГБ

Тип накопителей

NVMe

 

В контуре также использовались три сервера «1С:Предприятия» и Apache. Для каждого было выделено 64 ядра, включая виртуальные, и 128 ГБ оперативной памяти.

Стенд № 2

Во втором контуре сервер СУБД был переведён на AMD EPYC 9555:

 

Параметр

Значение

Частота процессора

3 200 МГц

Количество ядер, включая виртуальные

128

Оперативная память

768 ГБ

Тип накопителей

NVMe

 

Количество серверов «1С:Предприятия» осталось прежним: три сервера по 64 ядра и 128 ГБ оперативной памяти. Новая инфраструктура использовала память DDR5, а увеличение ресурсов сервера СУБД позволило расширить число одновременно выполняемых потоков до 256.

Результат на первом стенде: 5 122 секунды

Для полного сценария было установлено целевое время 7 200 секунд, то есть два часа.

На конфигурации с Intel Xeon Platinum 8260 операции выполнялись следующим образом:

 

Этап

Длительность

Расчёт доначисления

651 секунда

Перерасчёт документов «Отпуск»

2 343 секунды

Перерасчёт документов «Командировка»

1 951 секунда

Расчёт заработной платы

175 секунд

 

Полное время ключевой операции составило 5 122 секунды, или 1 час 25 минут 22 секунды. Таким образом, исходный стенд выполнил расчётный цикл в пределах установленного двухчасового интервала.

Зафиксированное значение APDEX для контрольной операции составило 1,000. В рамках данного теста выполнялся один замер, поэтому минимальное, среднее и максимальное значения совпадают.

 

Рисунок 1. Загрузка процессоров серверов «1С:Предприятия» при выполнении теста на стенде № 1

 

Рисунок 2. Загрузка процессоров сервера Postgres Pro при выполнении теста на стенде № 1

 

Результат на втором стенде: 2 626 секунд

После переноса сценария на инфраструктуру с AMD EPYC 9555 были получены следующие результаты:

 

Этап

Длительность

Расчёт доначисления

428 секунд

Перерасчёт документов «Отпуск»

1 125 секунд

Перерасчёт документов «Командировка»

923 секунды

Расчёт заработной платы

148 секунд

 

Полный цикл занял 2 626 секунд, или 43 минуты 46 секунд.

При неизменном составе операций время выполнения сократилось с 5 122 до 2 626 секунд, то есть практически в два раза. Целевой предел в 7 200 секунд был достигнут на обоих стендах, однако второй контур продемонстрировал существенный запас по времени выполнения массовых перерасчётов.

Значение APDEX для контрольной операции также составило 1,000 при одном выполненном замере.

 

Рисунок 3. Загрузка процессоров серверов «1С:Предприятия» при выполнении теста на стенде № 2

 

Рисунок 4. Загрузка процессоров сервера Postgres Pro при выполнении теста на стенде № 2

 

Где был получен основной выигрыш

Наиболее заметно смена инфраструктуры повлияла на продолжительные операции перерасчёта документов:

  • перерасчёт отпусков сократился с 2 343 до 1 125 секунд;
  • перерасчёт командировок сократился с 1 951 до 923 секунд;
  • расчёт доначислений сократился с 651 до 428 секунд;
  • расчёт заработной платы сократился со 175 до 148 секунд.

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

Графики процессорной загрузки также показывают различия между прикладным и СУБД-уровнями. Серверы «1С:Предприятия» на протяжении большей части сценария сохраняли заметный резерв вычислительных ресурсов, тогда как более продолжительная нагрузка формировалась на стороне Postgres Pro. На втором стенде профиль загрузки СУБД изменился одновременно с сокращением общей длительности теста.

Почему этот результат важен для крупных внедрений 1С:ЗУП КОРП

Практическая ценность испытаний состоит не только в том, что система уложилась в заданные два часа. Тест показал сразу два свойства корпоративного контура.

Во-первых, типовой для крупной расчётной службы набор массовых перерасчётов может быть выполнен на массиве из 30 000 табельных номеров в установленное технологическое окно.

Во-вторых, производительность сценария заметно масштабируется при модернизации серверной инфраструктуры. Переход на более современную процессорную архитектуру, DDR5 и увеличенный ресурс сервера СУБД сократил полный расчётный цикл почти вдвое без изменения прикладного сценария.

Для проектов 1С такой результат особенно показателен. Он демонстрирует, что при оценке производительности 1С:ЗУП КОРП недостаточно измерять отдельные операции или ориентироваться только на число пользователей. Критичным объектом тестирования должен быть полный расчётный процесс: с реальными объёмами кадровых данных, массовыми перерасчётами и последовательностью операций, соответствующей промышленной эксплуатации.

Проведённый нагрузочный тест подтвердил, что «1С:Зарплата и управление персоналом 8 КОРП» способна обрабатывать крупный расчётный массив в ограниченное время, а архитектура решения позволяет получать измеримый эффект от масштабирования инфраструктуры.

 

Вступайте в нашу телеграмм-группу Инфостарт

зарплата и управление персоналом зуп корп highload нагрузочное тестирование нт масштабирование enterprise

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Управление персоналом (HRM) Бухгалтер Пользователь 1С:Предприятие 8 Бухгалтерский учет Управленческий учет Платные (руб)

1С:Зарплата и управление персоналом 8 – программа для полной автоматизация учета и управления сотрудниками на предприятии. Базовая, КОРП и ПРОФ версии. Покупайте в Инфостарт и получайте 15% бонусов на наши услуги, сервисы и мероприятия!

11100 руб.

17.02.2016    177039    755    6    

530

HighLoad оптимизация Программист 1С 8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Использование оператора «В» для полей или данных составного типа (например, Регистратор) может приводить к неочевидным проблемам.

10.11.2025    10761    ivanov660    48    

53

HighLoad оптимизация Программист 1С:Предприятие 8 1C:ERP Бесплатно (free)

Приведем примеры использования различных в динамических списках и посмотрим, почему это плохо.

18.02.2025    12153    ivanov660    39    

62

HighLoad оптимизация Программист Россия Бесплатно (free)

А вы знали, что сервер 1С при соединении с базой на сервере PostgreSQL самостоятельно устанавливает некоторые параметры? Это важно знать при настройке сервера и отладке долгих запросов. Предлагаю разобраться.

27.08.2024    6989    soulner    10    

40

HighLoad оптимизация Технологический журнал Системный администратор Программист Бесплатно (free)

Обсудим поиск и разбор причин длительных серверных вызовов CALL, SCALL.

24.06.2024    14862    ivanov660    13    

64

HighLoad оптимизация Программист 1С:Предприятие 8 Бесплатно (free)

Метод очень медленно работает, когда параметр приемник содержит намного меньше свойств, чем источник.

06.06.2024    21316    Evg-Lylyk    73    

46
Для отправки сообщения требуется регистрация/авторизация