При переходе на платформу 1С:Предприятие версии 8.3.11 многие администраторы и пользователи сталкиваются с резким падением производительности. Процесс rphost начинает критически загружать ядро процессора на 100% при выполнении стандартных операций: открытии форм, отчетов или инициализации схем компоновки данных, например при исполнении кода ОтчетОбъект.СхемаКомпоновкиДанных = СхемаКД. При этом сервер СУБД MS SQL или PostgreSQL остаётся практически незагруженным.
Проанализируем причины возникновения этой проблемы, выясним, какие технические изменения в платформе вызывают задержки, и разберем практические способы восстановления нормальной скорости работы системы.
Рассмотрим подробно, почему версии 8.3.10 и более ранние работали быстро на той же конфигурации и серверном оборудовании, а 8.3.11 вызывает длительные задержки:
STLPort (которая использовалась в файле stl83.dll) и перевели платформу на стандартные библиотеки рантайма C++ (Universal CRT). Новые алгоритмы десериализации метаданных и работы с контейнерами памяти требуют большей производительности процессора.rphost выполняются строго в один поток процессора. На многоядерных серверах со слабой производительностью на одно ядро (например, старые процессоры Xeon) время выполнения одиночного вызова возрастает в разы.Если используется 32-разрядный сервер 1С, необходимо правильно ограничить использование памяти для процессов rphost, чтобы предотвратить их зависание при постоянных перезапусках.
Разберем по шагам порядок настройки в консоли администрирования кластера серверов 1С:
rphost (из расчета не более 1,5–2 ГБ ОЗУ на один процесс).Так как основная причина критических затупов связана с работой компонентов C++ в среде Windows Server 2003, эффективным решением является вынос службы сервера 1С (процессы ragent, rmngr, rphost) на операционную систему не ниже Windows Server 2012 / Windows 10.
Выясним, как это реализовать с минимальными затратами:
При работе с крупными конфигурациями на базе Библиотеки Стандартных Подсистем (БСП), такими как ЗУП 3, БП 3 или ERP, 32-битный процесс rphost не справляется с объемом памяти. Переход на 64-битный сервер 1С снимет лимит в 4 ГБ ОЗУ на процесс и позволит платформе задействовать 64-разрядные инструкции процессора.
Посмотрим на последовательность действий:
Чтобы пользователи не сталкивались со стопроцентной загрузкой процессора при первом открытии отчетов и журналов документов, организуем автоматический «прогрев» кэша метаданных.
Рассмотри основные рекомендации по оптимизации:
Управление полнотекстовым поиском, где снимем активность фонового индексирования.Важное примечание: Если инфраструктурные изменения временно недоступны, а конфигурации не требуют обязательного использования релизов 8.3.11, наиболее стабильным техническим решением будет временный откат на версию платформы 8.3.10 (например, 8.3.10.2580/8.3.10.2699), в которой используется прежний механизм работы с библиотеками C++.