Одной из самых неприятных ситуаций для системного администратора 1С является внезапное падение службы сервера, особенно когда это происходит с определенной периодичностью, например, раз в две недели. В таких случаях работа пользователей прерывается, а в журнале событий Windows фиксируется ошибка приложения rmngr.exe с кодом исключения 0xc0000005 и указанием на сбойный модуль backbas.dll. Разберем подробно, почему это происходит и как стабилизировать работу системы.
Код исключения 0xc0000005 означает Access Violation (нарушение прав доступа к памяти). Это техническое состояние, при котором процесс rmngr.exe (менеджер кластера) пытается обратиться к адресу оперативной памяти, который ему не принадлежит, либо к участку памяти, выполнение кода в котором запрещено системой безопасности Windows. Сбойный модуль backbas.dll является базовой библиотекой платформы, отвечающей за основные механизмы работы сервера и проверку лицензионной чистоты.
Выясним причину возникновения такой ситуации. В контексте платформы 8.3.15.1489 и аналогичных версий это может быть вызвано следующими факторами:
backbas.dll часто происходит в моменты проверки ключей защиты или при использовании эмуляторов.Рассмотрим наиболее правильный способ борьбы с нестабильностью сервера с точки зрения архитектуры 1С. Вместо жесткого перезапуска всей службы ragent (который прерывает работу всех сеансов), мы можем настроить автоматическое обновление рабочих процессов. Это позволит системе «освежать» память без участия администратора.
Разберем по шагам, как настроить перезапуск процессов в консоли администрирования серверов 1С:
Локальный кластер).86400 секунд (это ровно одни сутки). Если нагрузка велика, можно установить меньшее значение, но для стабильности раз в две недели суток будет достаточно.600–1200 секунд. Это время, которое дается «старому» процессу на завершение работы после того, как новые пользователи начали подключаться к «новому» процессу.Проанализируем ситуацию: при таких настройках менеджер кластера будет по очереди создавать новые процессы rphost.exe, плавно переводить на них пользователей и закрывать старые, очищая занятую ими память.
Поскольку ошибка 0xc0000005 напрямую связана с доступом к памяти, нам необходимо убедиться, что Windows не блокирует функции 1С. Рассмотрим алгоритм настройки исключений:
rmngr.exe, rphost.exe, ragent.exe, которые находятся в папке bin вашей версии платформы.Часто вылет в модуле backbas.dll сигнализирует о проблемах при взаимодействии с драйвером защиты или при попытке COM-соединения с другими базами. Выясним причину через проверку драйверов:
V83.COMConnector в оснастке "Службы компонентов". Убедимся, что у пользователя, под которым запускается служба 1С, есть права на запуск и активацию компонента.Если падения происходят с завидной регулярностью, возможно, дело в накоплении ошибок в сеансовых данных. Проанализируем способ радикальной очистки:
Перезапуск службы 1С по расписанию (например, раз в неделю ночью в субботу) — это "костыль", но зачастую самый эффективный в условиях ограниченного времени. Создадим простой bat-файл для планировщика заданий:
net stop "1C:Enterprise 8.3 Server Agent (x86-64)"
timeout /t 30 /nobreak
taskkill /f /im rphost.exe
taskkill /f /im rmngr.exe
taskkill /f /im ragent.exe
rd /s /q "C:\Program Files\1cv8\srvinfo\reg_1541\snaccxt"
net start "1C:Enterprise 8.3 Server Agent (x86-64)"
Важный момент: Команда rd /s /q удаляет папку временных данных сеансов (snaccxt). Это помогает избавиться от "мусора", который накапливается в кластере и может приводить к ошибкам в rmngr.exe. Перед выполнением этих действий обязательно убедитесь, что путь к srvinfo соответствует вашим настройкам.
Платформа 8.3.15.1489 имеет известные проблемы со стабильностью при работе с индексами полнотекстового поиска. Если индекс поврежден, при попытке автоматического обновления (которое часто происходит по расписанию) менеджер кластера падает. Рассмотрим шаги по исправлению:
В завершение отметим, что если ни один из методов не помогает, наиболее надежным решением будет обновление платформы до актуальных стабильных релизов (например, из веток 8.3.18 или 8.3.22), где многие ошибки управления памятью в rmngr.exe уже исправлены разработчиками "1С".