Сборки конфигурации 1С:Бухгалтерия 3.0 (начиная с релизов 3.0.43 и 3.0.44) требуют от платформы «1С:Предприятие 8.3» повышенного объема оперативной памяти и ресурсов системы. Пользователи часто сталкиваются со ситуацией, когда при работе с базой — или даже при её простое — тонкий или толстый клиент самопроизвольно закрывается с системной ошибкой Windows «Работа программы завершена». Рассмотрим подробно, почему возникают эти сбои и какими способами можно добиться стабильной работы платформы.
Проанализируем ключевые факторы, приводящие к непредсказуемым «вылетам» базы данных в файловом или сетевом режиме:
1cv8.exe или 1cv8c.exe) объем адресуемой памяти для одного приложения ограничен 2 ГБ. Начиная с версии БП 3.0.44 объемы считываемых данных, интерфейсных форм и кеша значительно возросли. При достижении порога около 1.8–2.0 ГБ операционная система принудительно завершает процесс 1С без вывода внутренних сообщений об ошибке.1C во время динамической записи или обновления, что приводит к падению сеанса.Выясним, какие действия необходимо предпринимать пошагово для восстановления стабильности системы.
Прежде всего проанализируем, кроется ли проблема в самой базе или в окружении системы. Создадим демо-базу той же версии (например, 3.0.44.204) и поработаем в ней. Если демонстрационная база работает без сбоев, а рабочая вылетает — проблема заключается в накопленном кэше, структуре данных или фоновых процессах рабочей базы.
Если на компьютерах установлена 64-битная операционная система Windows (например, Win 7 x64), наиболее эффективным решением проблемы с выгрузкой памяти станет установка 64-разрядной версии тонкого/толстого клиента 1С. 64-битный процесс не имеет жесткого ограничения в 2 ГБ ОЗУ на сеанс, что полностью исключает падения типа Out of Memory.
Для точного определения причины падения включим технологический журнал платформы. Для этого в каталоге параметров платформы (например, C:\Program Files\1cv8\8.3.X.XXXX\bin\conf) создадим файл logcfg.xml со следующим содержимым:
<config xmlns="http://v8.1c.ru/v8/tech-log">
<log location="C:\1C_Logs" history="24">
<event>
<eq property="Name" value="EXCP"/>
</event>
<event>
<eq property="Name" value="PROC"/>
</event>
</log>
</config>
После падения платформы проанализируем созданные файлы логов в папке C:\1C_Logs. Событие EXCP укажет точную причину или модуль, на котором происходит сбой.
Посмотрим, как отключить фоновые процессы, вызвавшая сбой в файловой базе. Запуск базы можно выполнить с ключом запрета выполнения регламентных заданий:
1cv8.exe enterprise /F"C:\Bases\BP" /AllowExecuteScheduledJobs -Off
В самой конфигурации 1С рекомендуется зайти в раздел Администрирование — Интернет-поддержка и сервисы и временно отключить автоматическую загрузку новостей, проверку контрагентов и баннеры, снизив нагрузку на веб-компоненты платформы.
Обязательно очистим временные папки 1С, удалив содержимого директорий:
%LocalAppData%\1C\1Cv8%AppData%\1C\1Cv8Ветки платформы 8.3.8 и 8.3.9 признаны устаревшими и содержат ряд документированных багов работы с памятью. Рекомендуется обновить платформу «1С:Предприятие» до стабильных версий (например, 8.3.10 и выше, либо до финальных сборок 8.3.8.2322 / 8.3.9.2033).
Добавим в список исключений антивирусного ПО (например, Kaspersky) следующие объекты:
1cv8.exe и 1cv8c.exe.%AppData%\1C и %LocalAppData%\1C.1Cv8.1CD).