Переход с обычных форм («Управление торговлей 10.3») на управляемые формы («Управление торговлей 11») нередко сопровождается субъективным или объективным падением скорости работы: формы открываются с задержкой, списки прокручиваются медленнее, а проведение документов требует больше времени. Разберем подробный комплекс мер, позволяющий выявить узкие места и ускорить работу конфигурации на связке Windows Server, Remote Desktop Services (терминал), кластера «1С:Предприятие 8.3» и MS SQL Server.
Если на одном физическом сервере совмещены роли сервера терминалов (RDS), сервера приложений 1С и СУБД, ключевым источником задержек управляемого интерфейса часто выступает встроенный механизм Dynamic Fair Share Scheduling (DFSS). По умолчанию Windows Server принудительно нарезает процессорное время на равные доли между сессиями пользователей. Для управляемых форм 1С, требующих мгновенного выделения максимальной мощности ядра на короткий интервал (сериализация XML/JSON, отрисовка элементов формы на клиенте), такое искусственное ограничение критично.
Разберем по шагам, как отключить Fair Share для процессора:
regedit от имени администратора.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Quota System.EnableCpuQuota (тип DWORD) и установим его значение равным 0. Если параметр отсутствует, создадим его.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\Disk и установим EnableFairShare в значение 0 (для отключения дискового Fair Share).HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TSFairShare\NetFS, установив EnableFairShare в 0.Платформа «1С:Предприятие 8.3» крайне чувствительна к производительности процессора на одно ядро (Single-thread performance). По умолчанию серверные процессоры и операционные системы используют энергосберегающие профили (C-States, P-States, Intel SpeedStep / AMD Cool'n'Quiet), понижая частоту ядра до 1.2–1.6 ГГц в моменты кратковременного простоя. Когда пользователь открывает форму, процессор не успевает мгновенно выйти на турбо-частоту, что создает видимый эффект «задумчивости» интерфейса.
Выполним следующие корректировки:
C-States (C1E, C3, C6).Проанализируем ключевые параметры СУБД, напрямую влияющие на быстродействие проведения документов и формирования отчетов в УТ 11:
Max Degree of Parallelism необходимо выставить в значение 1. Платформа 1С формирует запросы, не требующие распараллеливания силами СУБД; включенный параллелизм создает значительные задержки на синхронизацию потоков (ожидания типа CXPACKET).tempdb на несколько файлов данных одинакового размера (по числу физических ядер процессора, но не более 8). Это устранит очереди и блокировки в системных страницах распределения пространства (PFS/GAM/SGAM).MSSQLSERVER право SeLockMemoryPrivilege в локальных политиках безопасности Windows (Локальные политики → Назначение прав пользователя → Закрепление страниц в памяти). Это предотвратит сброс буферного пула SQL в файл подкачки при дефиците памяти.SE_MANAGE_VOLUME_NAME), что исключит заполнение файлов нулями при авторасширении.localhost или точку ., чтобы обмен шел через оперативную память в обход сетевого стека TCP/IP.Выясним причину задержек на уровне сервера приложений. При совмещении ролей требуется распределить нагрузку процессов rphost.exe:
rphost.srvinfo) при остановленной службе ragent, если наблюдается долгое открытие конфигуратора и клиентских сессий.В самой конфигурации заложено множество ресурсоемких механизмов, которые можно перевести в фоновый режим или отключить при ненадобности:
Постоянное сканирование временных файлов антивирусным ПО или защитником Windows (Defender) способно снизить скорость работы 1С в разы. Обязательно добавим в список исключений:
1cv8.exe, 1cv8c.exe, ragent.exe, rmngr.exe, rphost.exe, sqlservr.exe.*.1CD, *.mdf, *.ldf, *.ndf, *.cfl.srvinfo, каталоги баз данных SQL, а также папку временных файлов пользователей AppData\Local\Temp.