Почему зависает процесс 1cv8.exe и вылетают пользователи в файловой базе 1С по сети?

Системный администратор 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

Многие небольшие компании используют файловый вариант работы с базами данных 1С:Предприятие, подключая пользователей через общую сетевую папку (протокол SMB). Рано или поздно системные администраторы сталкиваются с неприятным симптомом: пользователи в сети внезапно вылетают из программы, а на главном компьютере («сервере») в диспетчере задач зависает процесс 1cv8.exe. Этот процесс невозможно завершить даже с правами администратора (система выдает ошибку «Отказано в доступе»), и единственным решением становится полная перезагрузка компьютера-хоста.

В этой статье мы подробно разберем, почему возникает эта проблема, проанализируем внутренние механизмы операционной системы Windows и сети, а также рассмотрим комплекс мер для эффективной борьбы с зависаниями и аварийными завершениями работы 1С.

Выясняем причину: природа «неубиваемого» процесса 1cv8.exe

Проанализируем ситуацию, когда процесс 1cv8.exe невозможно закрыть стандартными средствами операционной системы. Почему это происходит? В Windows процесс не может быть завершен, если один из его потоков завис внутри системного вызова в режиме ядра (драйвера устройства или сетевого редиректора). Это состояние называется uninterruptible sleep (непрерываемый сон).

Когда база данных 1С запущена в файловом режиме через сетевую папку, клиентское приложение на удаленном компьютере постоянно осуществляет чтение и запись в один общий монолитный файл 1Cv8.1CD. Общение происходит через драйвер сетевой файловой системы Windows (системные компоненты mrxsmb.sys и rdbss.sys). Если в локальной сети происходит даже кратковременный микросбой, задержка пакета или потеря связи, сетевой редиректор отправляет запрос на блокировку файла и бесконечно ожидает ответа от удаленной системы. Пока этот запрос активен на уровне ядра ОС, процесс 1С блокируется намертво. Операционная система не может принудительно завершить его, чтобы не нарушить целостность файловой подсистемы ядра.

Оппортунистические блокировки (Oplocks) и кэширование SMB

Разберем по шагам, как современные протоколы сетевого доступа Windows (SMBv2 и SMBv3) влияют на работу файловой базы. По умолчанию в Windows включены так называемые оппортунистические блокировки (Oplocks) и агрессивное кэширование метаданных. Этот механизм призван ускорить копирование обычных файлов по сети, однако для баз данных он крайне опасен.

Когда один из пользователей выполняет транзакцию в 1С, сетевой клиент пытается закэшировать часть файла базы данных локально. При микроразрыве связи механизм Oplocks удерживает кэш файла 1Cv8.1CD на клиентской машине, в то время как на компьютере-хосте файл остается заблокированным «призрачной» сессией. В результате все остальные пользователи мгновенно теряют доступ к базе и аварийно завершают работу, а на главном компьютере зависает дескриптор файла.

Чтобы минимизировать негативное влияние кэширования SMB, мы рекомендуем отключить кэширование сетевых папок на уровне реестра всех клиентских компьютеров. Для этого выполним следующие действия:

  1. Откроем редактор реестра (regedit.exe).
  2. Перейдем в ветку реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanmanWorkstation\Parameters
  3. Создадим или изменим три параметра типа DWORD (32 бита) со значением 0:
    • DirectoryCacheLifetime
    • FileInfoCacheLifetime
    • FileNotFoundCacheLifetime

Эти параметры заставят сетевой редиректор Windows всегда напрямую обращаться к хосту за актуальным состоянием файлов базы данных 1С, исключая долгое удержание зависших дескрипторов.

Проверяем службу «Автономные файлы» (Offline Files)

Рассмотрим еще одну частую причину внезапных сетевых сбоев — встроенную службу «Автономные файлы» в Windows. Если эта функция включена для сетевой папки с базой данных 1С, операционная система в фоновом режиме пытается синхронизировать тяжелый файл базы данных на локальный диск клиента.

В момент проведения фоновой синхронизации служба полностью блокирует доступ к файлу 1Cv8.1CD для записи. Другие пользователи, пытающиеся в этот момент провести документ или открыть отчет, получают критический сбой сетевого доступа и вылетают. Мы настоятельно рекомендуем полностью отключить службу «Автономные файлы» на всех компьютерах сети через Панель управления Windows (раздел «Центр синхронизации» — «Управление автономными файлами»).

Настройка энергосбережения сетевых карт (Green Ethernet)

Выясним, почему вылеты пользователей часто происходят «без видимых причин» во время простоя или в начале рабочего дня. На современных компьютерах в настройках сетевых адаптеров по умолчанию включены функции энергосбережения.

Если пользователь отлучился от рабочего места на 10–15 минут, операционная система может перевести сетевой адаптер в режим пониженного энергопотребления или временно приостановить его работу. Этого кратковременного отключения сетевого моста достаточно, чтобы сессия SMB рухнула. При возвращении пользователя программа пытается обратиться к открытому файлу базы данных, получает сетевую ошибку и завершается аварийно, оставляя заблокированный процесс на хосте.

Для решения этой проблемы настроим сетевые карты на компьютерах пользователей и на главном ПК:

  1. Откроем Диспетчер устройств Windows.
  2. Найдем наш сетевой адаптер в разделе «Сетевые адаптеры» и откроем его свойства.
  3. Перейдем на вкладку Управление электропитанием и снимем флажок с пункта Разрешить отключение этого устройства для экономии энергии.
  4. Перейдем на вкладку Дополнительно (Advanced) и переведем в режим Disabled (Выключено) параметры:
    • Green Ethernet (Зеленый Ethernet)
    • Energy Efficient Ethernet (Энергоэффективный Ethernet)
    • Power Saving Mode (Режим энергосбережения)

Исключения в антивирусном ПО

При многопользовательской работе в файловой 1С непрерывно создаются, перезаписываются и удаляются служебные файлы блокировок с расширением *.1CL, временные файлы *.tmp, а также файлы журнала регистрации (1Cv8.lgd или 1Cv8.lgf). Если антивирусное программное обеспечение на хосте или клиенте решит проверить один из этих файлов в момент активной транзакции, доступ к файлу заблокируется на долю секунды.

Для платформы 1С:Предприятие монопольный захват служебного файла сторонним процессом приводит к критической ошибке СУБД. Поэтому обязательно добавим в список исключений антивируса на всех ПК:

Публикация базы 1С на веб-сервере — наиболее эффективное решение

Рассмотрим самый надежный, проверенный практикой и при этом абсолютно бесплатный способ организации совместной работы в файловой 1С без приобретения дорогостоящей серверной лицензии. Речь идет о публикации базы данных на веб-сервере (например, бесплатном Apache 2.4 или встроенном в Windows IIS).

При использовании веб-сервера архитектура взаимодействия кардинально меняется:

Перевод файловой базы на веб-сервер решает проблему сетевой нестабильности раз и навсегда, обеспечивая высокий уровень безопасности данных и комфортную работу пользователей.

← На главную