При переходе на новые версии платформы «1С:Предприятие» (начиная с 8.3.14 и выше) многие системные администраторы сталкиваются с критической нестабильностью рабочих процессов. Одной из самых неприятных проблем является внезапное завершение работы rphost.exe, что сопровождается разрывом соединений у пользователей и ошибкой «Удаленный хост принудительно разорвал существующее подключение» (код 10054). Рассмотрим причины этого явления и разберем по шагам методы диагностики и устранения данной неисправности.
Проанализируем типичный лог ошибки из журнала событий Windows. Как правило, сбой происходит в модуле ntdll.dll с кодом исключения 0xc0000374. В системном администрировании этот код расшифровывается как STATUS_HEAP_CORRUPTION (повреждение кучи). Это означает, что процесс попытался выполнить операцию с памятью, которая к этому моменту уже была повреждена или некорректно освобождена.
Выясним причину такого поведения. Начиная с версии 8.3.14, разработчики платформы существенно переработали механизмы управления памятью и взаимодействия с внешними компонентами. Если в вашей информационной базе используются устаревшие драйверы защиты или внешние библиотеки (DLL), они могут войти в конфликт с новым менеджером памяти rphost. Рассмотрим основные способы решения этой проблемы.
Как показывает практика, одной из наиболее частых причин падения rphost на новых платформах является использование конфигураций со специализированной защитой. Например, решения для ювелирной торговли, автосервисов или медицины часто используют драйверы Guardant или Sentinel для контроля лицензирования.
Разберем алгоритм действий в этой ситуации:
rphost прекратились, значит, причина найдена.ntdll.dll в Windows Server 2012 R2 и выше.Если на сервере крутится много тяжелых баз (например, «Зарплата и управление персоналом» и «Бухгалтерия предприятия»), они могут «мешать» друг другу в рамках одного процесса rphost. В случае критической ошибки в одной базе падает весь процесс, выбрасывая всех пользователей из других баз.
Рассмотрим, как минимизировать риски через настройки кластера:
Если ваш сервер приложений работает под управлением Windows, а база данных развернута на PostgreSQL (например, на CentOS), причиной ошибки 10054 может быть сетевой разрыв между ними. Выясним, что можно настроить в этой конфигурации.
Проанализируем параметры файла postgresql.conf. Часто помогает корректировка параметров keep-alive, чтобы соединения не закрывались операционной системой раньше времени:
tcp_keepalives_idle = 60
tcp_keepalives_interval = 10
tcp_keepalives_count = 6
Также проверим сетевые настройки на стороне Windows Server. Настоятельно рекомендуем отключить протокол IPv6 на сетевом адаптере сервера 1С. Платформа версии 8.3.14-8.3.16 иногда некорректно обрабатывает сокеты при попытке переключения между IPv4 и IPv6, что приводит к исключению в модуле dataexchangetcpclientimpl.cpp.
Не секрет, что ветки 8.3.14, 8.3.15 и начало 8.3.16 имели ряд «детских болезней», связанных с утечками памяти при работе через COM-соединения и фоновые задания. Если вы используете релиз 8.3.16.1063 или аналогичные ранние сборки, проанализируем возможность перехода на более стабильные версии.
Посмотрим на рекомендации специалистов:
Иногда rphost падает при попытке обратиться к поврежденному индексу полнотекстового поиска (ППД). Это происходит даже ночью, когда активных пользователей нет, но работают регламентные задания.
Проделаем следующие действия для профилактики:
srvinfo (за исключением файлов конфигурации кластера 1cv8wsrv.lst). Особенно нас интересуют папки с кэшем и индексами поиска.Если вышеописанные методы не помогают, стоит проверить внешние факторы. Убедитесь, что антивирус не сканирует порты 1560-1591 и рабочие каталоги сервера 1С. Инспекция сетевого трафика антивирусным ПО может разрывать TCP-пакеты в момент передачи дескрипторов, что вызывает мгновенный крах процесса rphost при попытке закрыть «битое» соединение.
Таким образом, решение проблемы падения рабочих процессов заключается в комплексном подходе: от обновления драйверов защиты до тонкой настройки параметров кластера и сетевых протоколов. Совместными усилиями по диагностике этих узких мест можно добиться стабильной работы системы даже на требовательных современных конфигурациях.