Переход с редакции 2.0 на 1С:Бухгалтерия 3.0 на платформе 1С:Предприятие 8.3 часто сопровождается ощутимым падением производительности. Пользователи сталкиваются с задержками при входе в программу (по 20–30 секунд) и долгим открытием журналов документов. При этом серверные мощности могут оставаться недозагруженными. Проанализируем основные причины возникновения тормозов и разберем по шагам действенные методы оптимизации системы.
Выясняем причины низкой производительности в управляемом интерфейсе
В отличие от обычных форм редакции 2.0, управляемый интерфейс 1С:Бухгалтерии 3.0 задействует динамические списки, клиент-серверный веб-сокетовый обмен и активные механизмы полнотекстового поиска. К ключевым узким местам системы относятся:
Скорость дисковой подсистемы. Обычные жесткие диски (HDD) плохо справляются со случайным чтением и записью мелких блоков данных, к которым постоянно обращается управляемое приложение и локальный кэш.
Влияние полнотекстового поиска (ППД). Если индекс полнотекстового поиска неактуален или разросся, динамические списки журналов документов задерживают отображение строк при выполнении запросов к базе.
Служебные фоновые задания и стартовые мониторы. При запуске сеанса программа выполняет проверку интернет-поддержки, загрузку курсов валют, обновление новостей и показателей, что замедляет стартовый вход.
Накладные расходы виртуализации. Использование виртуальных машин без строгого выделения ресурсов или со слабыми дисковыми массивами снижает отклик интерфейса.
Шаг 1. Перенос базы на SSD-накопитель и настройка аппаратной части
Практический опыт показывает, что узким местом для 1С почти всегда выступает дисковая подсистема. Даже на мощных процессорах классические HDD создают задержки ввода-вывода (IOPS). Рассмотрите следующие шаги по модернизации железа:
Перенесите файлы базы данных (в файловом режиме) или файлы СУБД mdf / ldf и tempdb (в клиент-серверном режиме) на быстрые SSD-накопители (NVMe / SATA SSD).
Убедитесь, что для информационной базы выделено достаточное количество оперативной памяти, а процесс сервера не уходит в файл подкачки.
Если используются виртуальные среды, убедитесь, что оперативная память и ядра процессора зафиксированы за виртуальной машиной без динамического перераспределения (overcommit).
Шаг 2. Обслуживание полнотекстового поиска (ППД) и реиндексация
Динамические списки в управляемых формах тесно связаны с механизмом полнотекстового поиска. Если индекс не обновлялся или поврежден, открытие списков затягивается. Проанализируем процесс обновления индекса через интерфейс программы:
Перейдите в раздел Администрирование — Обслуживание — Полнотекстовый поиск.
Выполните очистку и повторное создание индекса с помощью кнопки Очистить индекс, а затем Обновить индекс.
Если полнотекстовый поиск в работе пользователей не используется, отключите его, сняв флаг Использовать полнотекстовый поиск. Это снимет лишнюю нагрузку с диска при проведении документов.
Шаг 3. Отключение некритичных фоновых заданий и стартовых сервисов
Разберем, как отключить процессы, замедляющие запуск системы и работу пользователей в течение дня:
Откройте список регламентных и фоновых заданий через меню Администрирование — Обслуживание — Регламентные операции — Регламентные и фоновые задания.
Скорректируйте расписание или отключите задания, выполняющиеся слишком часто в рабочее время (например, Обновление индекса ППД, Загрузка курсов валют, Проверка наличия обновлений). Настройте их запуск на ночное время.
В настройках пользователей отключите выплывающие при старте панели («Монитор показателей», «Монитор основной деятельности» и блоки новости).
Шаг 4. Очистка кэша и регламентное обслуживание СУБД
При частых обновлениях конфигурации локальный кэш тонкого клиента на рабочих станциях накапливает устаревшие данные, что вызывает подвисания форм. Выполните очистку временных каталогов 1С на клиентах:
Завершите работу сеансов 1С.
Удалите содержимое папок кэша по путям:
%LOCALAPPDATA%\1C\1Cv8
%APPDATA%\1C\1Cv8
Для баз на MS SQL Server настройте еженедельное обслуживание: реорганизацию и ребуилд индексов, обновление статистики и очистку процедурного кэша.
Шаг 5. Оптимизация клиент-серверного взаимодействия
Если база работает в клиент-серверном режиме, настройте параметры СУБД MS SQL в соответствии с рекомендациями 1С:
Включите режим версионирования строк для снижения блокировок при чтении данных:
ALTER DATABASE [Имя_Базы] SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK IMMEDIATE;
ALTER DATABASE [Имя_Базы] SET ALLOW_SNAPSHOT_ISOLATION ON;
Установите ограничение степени параллелизма MAXDOP = 1 в настройках сервера MS SQL, чтобы избежать просадок производительности при выполнении сложных запросов управляемых форм.
Резюме и результаты
Для небольших баз (до 2–3 ГБ) с небольшой интенсивностью документооборота перенос информационной базы с виртуальной машины на локальный физический сервер с SSD-диском и своевременное переиндексирование позволяет ускорить запуск и открытие журналов в 2–3 раза без необходимости развертывания тяжелой SQL-инфраструктуры.