Зависание рабочих процессов сервера 1С:Предприятие (rphost.exe) — это классическая проблема администраторов, обслуживающих высоконагруженные системы или серверы, на которых размещено большое количество информационных баз. Когда процесс перестает отвечать, нагрузка на процессор падает до нуля, а оперативная память замирает в одном состоянии. Рассмотрим, как разобраться с этой ситуацией и стабилизировать работу сервера.
Когда вы наблюдаете «мертвый» процесс rphost, это чаще всего свидетельствует о том, что внутри него возникло критическое ожидание или взаимная блокировка потоков. Поскольку на одном кластере обычно «живут» сразу несколько баз данных, некорректная работа одной из них или тяжелое фоновое задание в какой-либо ИБ может привести к деградации всего рабочего процесса, что незамедлительно отражается на всех пользователях, подключенных к этому процессу.
Самым эффективным методом борьбы с данной проблемой в условиях лицензии 1С:ПРОФ является создание отдельных кластеров для каждой критически важной базы. Это позволяет гарантированно отделить нагрузку одной ИБ от другой.
rphost.exe, который не будет зависеть от других баз. Это предотвращает ситуацию, когда «падение» одной базы парализует работу остальных пользователей.Если в вашем распоряжении имеется лицензия уровня КОРП, вам доступны более гибкие настройки внутри штатной консоли администратора:
Количество ИБ на процесс.1.rphost для каждой информационной базы, что значительно повышает общую стабильность системы при разнородной нагрузке.Если изоляция процессов не дает ожидаемого результата, необходимо проанализировать, что именно происходит внутри зависшего процесса перед его «смертью». Для этого мы рекомендуем настроить Технологический журнал (ТЖ).
Разберем, на какие события следует обратить внимание:
EXCP — фиксирует исключительные ситуации и ошибки, которые могли привести к зависанию потока.CALL — позволяет выявить запросы, выполнение которых занимает аномально много времени (параметр duration).PROC — события, связанные с процессами, которые помогут понять, в какой момент происходит переключение или зависание.Для глубокого анализа ситуации вы можете воспользоваться инструментом procdump. В момент, когда процесс rphost «завис», но еще не завершен, снимите дамп памяти процесса:
procdump -ma [PID_процесса] dump_rphost.dmp
Анализ полученного файла через отладчик WinDbg с использованием актуальных символов отладки 1С поможет увидеть, какие именно потоки заблокированы и на каком участке кода (или внешнем вызове) происходит остановка.
Чтобы избежать подобных проблем в будущем, проанализируем дополнительные факторы:
srvinfo (сохранив настройки кластера) и кэша пользователей. Остатки конфигурационных файлов старых версий могут конфликтовать с новыми процессами.rphost.exe, rmngr.exe и ragent.exe, а также папки с базами данных и временными файлами 1С добавлены в исключения антивируса.Max Degree of Parallelism), чтобы тяжелые запросы не «забивали» все ресурсы процессора.Помните, что стабильность сервера 1С — это комплексный вопрос. Начните с изоляции процессов, как с наиболее радикального и проверенного способа, а затем переходите к детальному анализу логов, если проблема не исчезла. Совместными усилиями мы добьемся бесперебойной работы ваших баз данных.