Как ускорить работу 1С:Управление торговлей 11 в клиент-серверном и терминальном режиме?

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

Переход с обычных форм («Управление торговлей 10.3») на управляемые формы («Управление торговлей 11») нередко сопровождается субъективным или объективным падением скорости работы: формы открываются с задержкой, списки прокручиваются медленнее, а проведение документов требует больше времени. Разберем подробный комплекс мер, позволяющий выявить узкие места и ускорить работу конфигурации на связке Windows Server, Remote Desktop Services (терминал), кластера «1С:Предприятие 8.3» и MS SQL Server.

Отключение механизма распределения ресурсов процессора (DFSS)

Если на одном физическом сервере совмещены роли сервера терминалов (RDS), сервера приложений 1С и СУБД, ключевым источником задержек управляемого интерфейса часто выступает встроенный механизм Dynamic Fair Share Scheduling (DFSS). По умолчанию Windows Server принудительно нарезает процессорное время на равные доли между сессиями пользователей. Для управляемых форм 1С, требующих мгновенного выделения максимальной мощности ядра на короткий интервал (сериализация XML/JSON, отрисовка элементов формы на клиенте), такое искусственное ограничение критично.

Разберем по шагам, как отключить Fair Share для процессора:

  1. Запустим редактор реестра regedit от имени администратора.
  2. Перейдем в раздел: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Quota System.
  3. Найдем параметр EnableCpuQuota (тип DWORD) и установим его значение равным 0. Если параметр отсутствует, создадим его.
  4. Перейдем в ветку служб терминалов: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\Disk и установим EnableFairShare в значение 0 (для отключения дискового Fair Share).
  5. Выполним аналогичную операцию в ветке сетевого планировщика: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\NetFS, установив EnableFairShare в 0.
  6. Перезагрузим сервер для применения изменений в подсистеме планировщика задач Windows.

Настройка электропитания в BIOS/UEFI и операционной системе

Платформа «1С:Предприятие 8.3» крайне чувствительна к производительности процессора на одно ядро (Single-thread performance). По умолчанию серверные процессоры и операционные системы используют энергосберегающие профили (C-States, P-States, Intel SpeedStep / AMD Cool'n'Quiet), понижая частоту ядра до 1.2–1.6 ГГц в моменты кратковременного простоя. Когда пользователь открывает форму, процессор не успевает мгновенно выйти на турбо-частоту, что создает видимый эффект «задумчивости» интерфейса.

Выполним следующие корректировки:

  1. В настройках BIOS/UEFI сервера переведем профиль управления питанием (Power Management) в режим Maximum Performance (Static High Performance) и отключим глубокие состояния энергосбережения C-States (C1E, C3, C6).
  2. В операционной системе откроем панель управления, перейдем в раздел Электропитание и выберем схему Высокая производительность (High Performance).
  3. Проверим текущую частоту ядер под нагрузкой через системные утилиты мониторинга, убедившись, что процессор стабильно держит номинальную или максимальную турбо-частоту без просадок.

Тонкая настройка MS SQL Server для баз данных 1С

Проанализируем ключевые параметры СУБД, напрямую влияющие на быстродействие проведения документов и формирования отчетов в УТ 11:

  1. Параллелизм (MAXDOP): Для баз 1С на уровне инстанса SQL Server параметр Max Degree of Parallelism необходимо выставить в значение 1. Платформа 1С формирует запросы, не требующие распараллеливания силами СУБД; включенный параллелизм создает значительные задержки на синхронизацию потоков (ожидания типа CXPACKET).
  2. Оптимизация базы tempdb: Разделим системную базу tempdb на несколько файлов данных одинакового размера (по числу физических ядер процессора, но не более 8). Это устранит очереди и блокировки в системных страницах распределения пространства (PFS/GAM/SGAM).
  3. Закрепление страниц в памяти (Lock Pages in Memory): Назначим учетной записи службы MSSQLSERVER право SeLockMemoryPrivilege в локальных политиках безопасности Windows (Локальные политики → Назначение прав пользователя → Закрепление страниц в памяти). Это предотвратит сброс буферного пула SQL в файл подкачки при дефиците памяти.
  4. Мгновенная инициализация файлов: Предоставим службе SQL Server право «Выполнение задач по обслуживанию томов» (SE_MANAGE_VOLUME_NAME), что исключит заполнение файлов нулями при авторасширении.
  5. Протокол Shared Memory: Если сервер приложений 1С и SQL Server находятся на одной машине, укажем в свойствах информационной базы имя сервера СУБД как localhost или точку ., чтобы обмен шел через оперативную память в обход сетевого стека TCP/IP.

Настройка кластера серверов 1С:Предприятие

Выясним причину задержек на уровне сервера приложений. При совмещении ролей требуется распределить нагрузку процессов rphost.exe:

  1. В консоли администрирования кластера 1С настроим параметры перезапуска рабочих процессов по превышению допустимого объема памяти и по интервалу времени, чтобы предотвратить фрагментацию адресного пространства.
  2. Зададим параметр «Количество информационных баз на процесс» равным 1 или ограничим количество соединений на один рабочий процесс, обеспечив параллельную обработку вызовов несколькими процессами rphost.
  3. Регулярно очистим служебный каталог сеансовых данных и кеша метаданных кластера (srvinfo) при остановленной службе ragent, если наблюдается долгое открытие конфигуратора и клиентских сессий.

Оптимизация параметров конфигурации «Управление торговлей 11»

В самой конфигурации заложено множество ресурсоемких механизмов, которые можно перевести в фоновый режим или отключить при ненадобности:

  1. Расчет себестоимости и распределение партий: Переведем расчет себестоимости из режима реального времени в фоновое выполнение регламентным заданием в нерабочее время (ночью или с интервалом раз в несколько часов).
  2. Ограничение прав на уровне записей (RLS): Использование сложных ограничений по группам партнеров, складам и подразделениям существенно усложняет текст запросов к динамическим спискам. Если жесткое разграничение прав не требуется, отключим профили RLS для пользователей с высокой интенсивностью ввода данных.
  3. Ревизия регламентных заданий: Отключим неиспользуемые регламентные процедуры (синхронизация с классификаторами, автоматическая загрузка курсов валют каждые 15 минут, проверка контрагентов, полнотекстовый поиск по неиспользуемым справочникам).
  4. Отключение избыточных функциональных опций: Если предприятие не ведет учет по характеристикам, сериям, ордерным складам или многооборотной таре, отключим соответствующие опции в панели администрирования УТ 11 для разгрузки форм и исключения чтения пустых таблиц.

Антивирусные исключения

Постоянное сканирование временных файлов антивирусным ПО или защитником Windows (Defender) способно снизить скорость работы 1С в разы. Обязательно добавим в список исключений:

  1. Исполняемые процессы: 1cv8.exe, 1cv8c.exe, ragent.exe, rmngr.exe, rphost.exe, sqlservr.exe.
  2. Расширения файлов: *.1CD, *.mdf, *.ldf, *.ndf, *.cfl.
  3. Каталоги: рабочую директорию кластера srvinfo, каталоги баз данных SQL, а также папку временных файлов пользователей AppData\Local\Temp.
← На главную