Ситуация, когда после планового обновления платформы 1С:Предприятие 8.3 пользователи начинают массово жаловаться на медленную работу системы, встречается достаточно часто. Замедление может проявляться комплексно: долгий запуск клиентского приложения, задержки при открытии форм, медленное проведение документов и зависание отчетов. Разберем по шагам, с чем связано такое поведение и как вернуть системе прежнюю или даже более высокую скорость отклика.
Прежде чем приступать к масштабным перенастройкам, исключим фактор субъективной оценки пользователей. Выясним причину задержек с помощью объективных замеров:
Если замеры на копиях подтверждают кратное замедление именно на новой платформе, последовательно проанализируем инфраструктурные и платформенные факторы.
При переходе на новый релиз платформы старые скомпилированные схемы форм и метаданные могут вызывать конфликты, приводя к постоянным повторным перестроениям интерфейса. Выполним полную очистку кэша:
%AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8 (удаляем папки с длинными буквенно-цифровыми GUID-именами).ragent и очистим кэш сеансов и контекстов (файлы snccntx) внутри служебного каталога srvinfo.DBCC FREEPROCCACHE;
Новая версия платформы устанавливается в отдельный каталог на сервере и клиентах (например, C:\Program Files\1cv8\8.3.10.2299\bin\). Если антивирусное ПО или Защитник Windows были настроены на старые пути, они начинают сканировать в реальном времени все запущенные исполняемые файлы и дисковые операции 1С.
Проверим и добавим в исключения антивируса:
ragent.exe, rmngr.exe, rphost.exe, 1cv8.exe, 1cv8c.exe.srvinfo..mdf, .ldf, .ndf).Temp системной учетной записи службы 1С).Поведение оптимизатора запросов MS SQL может резко измениться при смене платформы, если сервер баз данных не настроен по стандарту 1С. Выполним следующие настройки СУБД:
CXPACKET. Установим параметр Max Degree of Parallelism = 1 в свойствах инстанса SQL Server.LEGACY_CARDINALITY_ESTIMATION = ON (или через флаг трассировки 9481).4199 (включение оптимизаций компилятора SQL) и флаг 2371 (динамический порог автоматического пересчета статистики для больших таблиц).FULLSCAN).TempDB на несколько файлов данных одинакового размера (по количеству физических ядер процессора, обычно от 4 до 8) с фиксированным шагом автороста в мегабайтах.Кратковременные однопоточные вызовы 1С (формирование элементов формы, запуск процедур модулей менеджера) критически чувствительны к тактовой частоте ядра процессора. Если на сервере активирован энергосберегающий режим, процессор не успевает поднять частоту под быстрой нагрузкой.
Если замедление сопровождается сложными условиями доступа у пользователей, проанализируем пересечение ролей. Использование логического оператора ИЛИ в условиях RLS для разных ролей одного пользователя заставляет СУБД объединять громоздкие подзапросы, что многократно увеличивает время получения данных.
Для проверки этой гипотезы назначим тестовому пользователю полные административные права без ограничений RLS. Если скорость работы восстановится, пересмотрим архитектуру ролей в конфигурации, объединяя условия в рамках единой роли или оптимизируя шаблоны ограничений доступа.
Задержки интерфейса при открытии окон часто вызваны сетевыми таймаутами. Проверим параметры сетевого взаимодействия:
IPv6 на сетевых адаптерах сервера и клиентских ПК.Shared Memory.nethasp.ini отключим широковещательный опрос сети (NH_USE_BROADCAST = Disabled) и явно укажем IP-адрес сервера лицензирования в параметре NH_SERVER_ADDR. Это устранит микрозависания при обращении к ключам защиты.Если после выполнения всех настроек проблема сохраняется только на конкретном релизе, рассмотрим обновление на более актуальную стабильную версию платформы, в которой устранены возможные ошибки конкретной сборки.