Ситуация, когда файловая база 1С начинает «тормозить» только у одного сотрудника при нормальной работе остальных, является классической технической загадкой для системного администратора. Особенно часто это проявляется в современных конфигурациях на управляемых формах, таких как 1С:Бухгалтерия 3.0. Проблема осложняется тем, что временная очистка кэша помогает лишь на несколько часов, после чего задержки при открытии и проведении документов возвращаются.
В этой статье мы подробно разберем комплекс мер по диагностике и устранению этой проблемы — от изменения способа подключения до тонкой настройки операционной системы.
Разберем самый эффективный способ решения проблем с файловыми базами. Прямое подключение через общую сетевую папку (протокол SMB) — это «зло» для производительности и целостности данных. В таком режиме клиентское приложение 1С самостоятельно считывает и записывает куски файла 1Cv8.1CD через сеть, что создает колоссальную нагрузку на канал связи и вызывает блокировки.
Рассмотрим установку и настройку веб-сервера (IIS или Apache):
\\Server\Base, а по адресу http://ServerName/BaseName.Почему это помогает? В этом случае работа с файлом базы данных происходит локально на сервере, а по сети передаются только готовые данные в оптимизированном формате. Это практически полностью снимает проблему сетевых задержек SMB.
Если переход на веб-сервер невозможен, проанализируем настройки сетевой карты на проблемном компьютере. Современные функции экономии ресурсов часто «медвежью услугу» для приложений реального времени, таких как 1С.
Выполним следующие шаги в свойствах сетевого адаптера:
Выясним, почему чистка кэша помогает лишь временно. Одной из причин может быть расположение папки AppData. Если в вашей организации используются перемещаемые профили пользователей, то папка с кэшем 1С может физически находиться на сервере. Получается «сеть в квадрате»: программа читает базу по сети и пишет временные файлы тоже по сети.
Проанализируем состояние локального хранилища:
Убедимся, что пути %AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8 ведут на быстрый локальный SSD. Также попробуем создать на проблемном компьютере нового пользователя Windows. Если под новой учетной записью тормоза исчезнут, значит, проблема в поврежденном реестре или специфических настройках старого профиля.
Проверим, не слишком ли усердно антивирус «опекает» рабочий процесс. При работе в файловом режиме 1С постоянно обращается к файлу 1Cv8.1CD. Если антивирус проверяет каждое такое обращение, задержки неизбежны.
Добавим в исключения (белый список) на клиентском ПК и на сервере:
*.1CD, *.1CL, *.cfl.1cv8.exe и 1cv8c.exe.В конфигурации БП 3.0 в файловом режиме за выполнение регламентных заданий (загрузка курсов, обновление классификаторов, полнотекстовый поиск) отвечает один из активных пользователей. Если система выбрала «проблемного» пользователя ответственным за эти задачи, его компьютер будет тормозить, выполняя фоновую работу за всех.
Рекомендуем отключить лишние задания:
Если стандартные ТиИ (Тестирование и исправление) не помогают, стоит выполнить «жесткую» перезагрузку структуры данных. Для этого используем механизм выгрузки в файл .dt.
Рассмотрим алгоритм:
.dt..dt в новую базу.Важный нюанс: Этот процесс полностью пересоздает физическую структуру файла базы данных, устраняя внутреннюю фрагментацию таблиц, которую не всегда видит утилита chdbfl.exe.
Если количество пользователей достигло трех и более, а база данных активно растет, файловый режим становится узким местом. Рассмотрим переход на бесплатную СУБД PostgreSQL. Это позволит:
Даже если сейчас в базе работают всего три человека, переход на клиент-серверный вариант (пусть даже на бесплатной версии 1С:Сервера или сервере мини-вызовов) избавит вас от 90% описанных проблем с производительностью.