Медленная 1С 8.3: как найти узкое место и вернуть скорость
Содержание
Программа 1С 8.3 очень медленно работает чаще всего по одной из пяти причин: файловая база лежит на сетевой папке, антивирус проверяет каждый файл базы, переполнен кэш пользователя, база разрослась без обслуживания или в фоне крутятся тяжёлые регламентные задания. Первые три устраняются за полчаса без программиста. Остальное требует доступа администратора, а иногда и разбора конфигурации.
Почему 1С тормозит именно у вас, видно по симптому. Медленно у одного пользователя — ищите на его компьютере. Медленно у всех и в одно время — смотрите сервер, сеть и фоновые задачи. Медленно в одном отчёте или документе — виноват запрос или доработка.
С чего начать, если 1С работает медленно: быстрая диагностика
Не меняйте всё сразу. Сначала соберите четыре факта — они сужают поиск в разы.
- Кого касается. Один компьютер, один отдел или все пользователи.
- Когда началось. После обновления, переезда на новый компьютер, установки антивируса, роста числа пользователей.
- Что именно тормозит. Запуск программы, открытие списков, проведение документов, отдельный отчёт, обмен.
- Тип базы. Файловая или клиент-серверная. Это видно в списке баз: у файловой в строке пути указан каталог (
File=...), у серверной — имя сервера и базы (Srvr=...;Ref=...).
Затем откройте «Диспетчер задач» Windows на вкладке «Производительность» и повторите медленную операцию. Процессор под 100% — не хватает вычислений или зациклился процесс. Диск под 100% — медленный носитель или антивирус. Память забита и растёт файл подкачки — нужна оперативная память.
Запишите, сколько секунд занимает медленная операция до изменений. Без замера «стало быстрее» — это ощущение, а не результат.
Слабое железо: когда компьютер не тянет 1С 8.3
Платформа 8.3 с современными конфигурациями (БП 3.0, ЗУП 3.1, УТ 11) заметно тяжелее старых версий. То, что летало пять лет назад, сегодня может еле ползти.
Ориентиры для рабочего места с файловой базой или тонким клиентом:
| Компонент | Будет тормозить | Работает комфортно |
|---|---|---|
| Оперативная память | 4 ГБ | 8 ГБ и больше |
| Диск | HDD 5400–7200 об/мин | SSD, лучше NVMe |
| Процессор | 2 ядра старше 8–10 лет | 4 ядра с высокой частотой на ядро |
| Разрядность системы | 32-битная Windows | 64-битная Windows |
Главный выигрыш даёт SSD. Файловая база — это один большой файл 1Cv8.1CD, и программа постоянно читает его мелкими кусками. На обычном жёстком диске время доступа в десятки раз больше, чем на SSD.
Для сервера 1С важна частота ядра, а не их количество. Отдельный тяжёлый отчёт или проведение выполняется в одном потоке, и 32 медленных ядра не ускорят его.
🔍 Как понять, что дело в железе:
- 📈 диск постоянно занят на 90–100%, хотя пользователь просто листает список;
- 🧠 свободной памяти меньше 10–15%, Windows активно использует файл подкачки;
- 🐢 на другом, более мощном компьютере та же база работает заметно быстрее.
Настройки Windows и антивирус, которые замедляют программу 1С
Самая частая причина, о которой не думают: антивирус. Он перехватывает каждое обращение к файлу базы и проверяет его. Для 1С, которая читает базу тысячами мелких операций, это катастрофа.
Исключения антивируса
Добавьте в исключения антивируса (включая встроенный «Защитник Windows»):
- 📁 каталог с файловой базой целиком;
- 📁 каталоги кэша пользователя:
%APPDATA%\1C\1cv8и%LOCALAPPDATA%\1C\1cv8; - 📁 каталог установки платформы:
C:\Program Files\1cv8; - 📁 на сервере 1С — каталог данных кластера (по умолчанию
srvinfoв профиле пользователя службы или в каталоге, указанном при установке); - 📁 на сервере СУБД — каталоги файлов баз данных.
Для процессов можно добавить 1cv8.exe, 1cv8c.exe, а на сервере — ragent.exe, rmngr.exe, rphost.exe.
Исключения снижают защиту этих папок. Делайте их точечно, а не отключайте антивирус целиком. В организациях согласуйте с тем, кто отвечает за безопасность.
Схема электропитания
На ноутбуках и офисных ПК Windows часто стоит в режиме экономии энергии. Процессор сбрасывает частоту, и тяжёлые операции идут в 1,5–2 раза дольше.
Откройте Панель управления → Электропитание и выберите схему «Высокая производительность». На сервере то же самое: режим «Сбалансированный» на серверах 1С — частая причина медленной работы, которую долго ищут в другом месте.
Фоновые службы
Индексирование Windows Search по каталогу базы, синхронизация облачных дисков (OneDrive, Яндекс Диск) и программы резервного копирования, которые копируют базу в рабочее время, тоже съедают диск. Никогда не держите рабочую файловую базу в папке облачной синхронизации: кроме тормозов, это прямой путь к повреждению файла.
Раздутая база: журнал регистрации, итоги и сжатие таблиц
Со временем база обрастает служебными данными. Скорость падает постепенно, и пользователи замечают это, когда уже стало плохо.
Журнал регистрации
Журнал записывает действия пользователей. При максимальном уровне детализации он за год вырастает до десятков гигабайт, а каждая запись в него замедляет работу.
Проверьте каталог 1Cv8Log рядом с файлом базы (для файловой) или в каталоге кластера (для серверной). Настройка уровня — в Конфигураторе: Администрирование → Настройка журнала регистрации. Там же можно сократить журнал, выгрузив старые записи в файл.
Для повседневной работы хватает уровня «Регистрировать ошибки, предупреждения и информацию». Режим «Регистрировать все события» включайте только на время поиска проблемы.
Тестирование и исправление, сжатие таблиц
Для файловой базы есть встроенный инструмент: Конфигуратор → Администрирование → Тестирование и исправление. В нём отметьте пункты «Реиндексация таблиц информационной базы» и «Сжатие таблиц информационной базы». Сжатие убирает пустоты внутри 1Cv8.1CD, и файл заметно уменьшается.
Перед тестированием сделайте резервную копию базы
(Администрирование → Выгрузить информационную базу в Конфигураторе). Для теста нужен монопольный доступ: все пользователи должны выйти из базы, их несохранённые данные пропадут. Запускайте вечером или в выходной.
Альтернатива, которая даёт тот же эффект для файловой базы: выгрузить базу
в .dt и загрузить её заново в пустой каталог. Файл собирается с нуля без фрагментации.
Итоги регистров
Если в базе много лет учёта, а отчёты строятся медленно, проверьте, установлен ли период рассчитанных итогов. В интерфейсе «Такси» это Функции для технического специалиста → Стандартные → Управление итогами (пункт меню «Функции для технического специалиста» включается в параметрах программы). Пересчёт итогов также требует, чтобы в базе никто не работал.
Обслуживание СУБД в клиент-серверном варианте
На MS SQL Server и PostgreSQL база тормозит без регулярного обслуживания: устаревает статистика, индексы фрагментируются. Типовой минимум:
- 🔧 MS SQL — ежедневное обновление статистики и еженедельное перестроение индексов через планы обслуживания;
- 🔧 PostgreSQL — регулярный
VACUUM ANALYZE(автоочистка должна быть включена); - 🔧 на MS SQL ограничьте память сервера параметром
max server memory, чтобы СУБД не забирала всю память у сервера 1С на той же машине.
Тяжёлые запросы, доработки и регламентные задания
Если медленно работает одна операция, а не вся программа, причина почти всегда в коде: в типовой конфигурации, в доработке программиста или во внешней обработке.
Замер производительности
Конфигуратор умеет показать, какая строка кода съедает время. Запустите базу из Конфигуратора в режиме отладки (Отладка → Начать отладку), затем включите Отладка → Замер производительности, выполните медленную операцию и остановите замер. Платформа покажет таблицу строк кода с долей времени каждой.
Типичные находки:
- 🔁 запрос внутри цикла по строкам документа — вместо одного запроса выполняется тысяча;
- 🧾 обращение «через точку» к реквизитам ссылок в цикле (
Строка.Номенклатура.Родитель.Наименование) — каждое такое обращение читает объект из базы; - 📦 подписки на события и расширения, которые срабатывают при записи каждого документа;
- 🧮 отчёт без отборов по периоду, который строится по всей истории базы.
Если код доработан, передайте результат замера программисту: таблица замера экономит ему часы поиска.
Регламентные и фоновые задания
Пользователи жалуются, что «1С подвисает каждые 15 минут» или «тормозит по утрам». Часто в это время запускается регламентное задание: загрузка курсов, обмен с сайтом, обновление полнотекстового индекса, обмен с ЭДО.
В БП 3.0, ЗУП 3.1 и УТ 11 список открывается так: Администрирование → Обслуживание → Регламентные операции → Регламентные и фоновые задания. Посмотрите, какие задания выполнялись в момент тормозов и сколько длились. Тяжёлые задачи перенесите на ночь через расписание задания.
Отдельная проверка для файловой базы: регламентные задания в ней выполняются в сеансе одного из пользователей. Если задание тяжёлое, тормозит именно у того, кто запустил программу первым.
Полнотекстовый поиск
Обновление индекса полнотекстового поиска
по большой базе может длиться долго и нагружать диск. Если поиск по всем данным не нужен, его отключают в Администрирование → Общие настройки в группе про полнотекстовый поиск. Строка поиска в списках при этом продолжит работать.
Сеть: медленная работа файловой базы по сети и клиент-сервер
Файловая база на сетевой папке
Это классический сценарий тормозов. База лежит в общей папке на сервере, пять–десять пользователей открывают её по сети. Каждый клиент тянет по сети страницы файла 1Cv8.1CD и сам ставит блокировки. Чем больше людей, тем хуже.
Практические ориентиры:
- 👥 до 3–5 одновременных пользователей файловая база по сети обычно работает терпимо при гигабитной сети;
- 📶 через Wi-Fi или VPN открывать файловую базу напрямую нельзя: тормоза и риск повреждения базы при обрыве связи;
- 🖥️ при большем числе пользователей переходят на клиент-серверный вариант или публикуют файловую базу через веб-сервер и подключаются тонким клиентом.
Публикация базы на веб-сервере (Apache или IIS) с подключением тонкого клиента по HTTP заметно ускоряет работу: файл базы читает один процесс на сервере, а по сети ходят только данные форм.
Клиент-серверный вариант
В серверной схеме клиент сначала обращается к агенту сервера (порт 1540), затем к менеджеру кластера (1541) и к рабочим процессам из диапазона портов, заданного в свойствах рабочего сервера (по умолчанию 1560–1591). Медленное соединение на любом из этих этапов даёт тормоза.
Что проверить:
- Задержку между клиентом и сервером:
pingдо сервера 1С по имени. Больше 1–2 мс в локальной сети — повод разобраться с сетью. - Что имя сервера разрешается быстро. Если DNS отвечает с задержкой, медленным становится каждый запуск. Добавьте имя сервера в
hostsдля проверки. - Что сервер 1С и сервер СУБД находятся в одной быстрой сети или на одной машине. Задержка между ними умножается на число запросов.
- Для удалённых сотрудников используйте тонкий клиент через веб-сервер или терминальный сервер , а не толстый клиент по VPN.
Устаревшая платформа или релиз конфигурации
Каждая конфигурация требует платформу с номером не ниже указанного в описании релиза. Работа на старой платформе иногда возможна, но часть механизмов работает медленнее или с ошибками.
Посмотреть версии можно в программе: Справка → О программе (кнопка с буквой «i» или вопросом в правом верхнем углу). Там указаны и платформа, и релиз конфигурации.
На что влияет обновление:
- ⚙️ в новых версиях платформы оптимизируют работу с СУБД и кэширование;
- 📦 в релизах типовых конфигураций исправляют медленные запросы, которые сами разработчики нашли в отчётах и проведении;
- 🧩 устаревший релиз в сочетании с новой платформой тоже бывает источником проблем — держите версии согласованными.
Перед обновлением конфигурации сделайте выгрузку базы в .dt. Если конфигурация доработана, обновление делает программист: при неудачном сравнении и объединении доработки потеряются.
Обратная ситуация: тормоза начались сразу после обновления. Тогда первое действие — очистить кэш (следующий раздел), второе — проверить, не изменился ли состав регламентных заданий.
Повреждённый кэш, вирусы и редкие причины тормозов
Кэш пользователя
Платформа хранит на компьютере пользователя кэш метаданных конфигурации. После обновления или сбоя он может стать некорректным: формы открываются медленно, программа «думает» на ровном месте.
Как очистить:
- Закройте все сеансы 1С на этом компьютере.
- Откройте каталоги
%APPDATA%\1C\1cv8и%LOCALAPPDATA%\1C\1cv8через строку адреса Проводника. - Удалите папки с длинными именами вида
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Файлы со списком баз (ibases.v8i) и папку1cv8\не трогайте.
Альтернатива без ручного удаления: в окне запуска выделите базу, нажмите «Изменить», дойдите до последней страницы и впишите в «Дополнительные параметры запуска» /ClearCache. Запустите базу один раз, затем параметр уберите.
Вирусы и повреждённые файлы
Майнер или другое вредоносное ПО грузит процессор, и тормозит всё, не только 1С. Проверьте в диспетчере задач, кто потребляет ресурсы, и запустите полную проверку антивирусом.
Повреждённые файлы платформы проявляются странно: ошибки при открытии форм, падения, медленный запуск. Лечится переустановкой платформы той же версии из дистрибутива.
Редкие, но критичные причины
- 🖨️ Недоступный сетевой принтер по умолчанию. Печатные формы и предпросмотр открываются по 20–30 секунд, пока Windows ждёт ответа от принтера.
- 💾 Почти заполненный диск. Когда свободно меньше 5–10%, временные файлы и файлы базы растут с трудом.
- 🔒 Конфликт блокировок. У всех «висит» проведение, пока один пользователь проводит большой документ или перепроводит месяц. В серверной базе посмотрите сеансы в консоли администрирования кластера.
- 🧵 Режим управляемых блокировок и старые доработки. Доработанные конфигурации с автоматическими блокировками под нагрузкой ждут друг друга чаще.
- 🖥️ Терминальный сервер без ресурсов. Двадцать сеансов на сервере с 16 ГБ памяти — каждому меньше гигабайта. Это неизбежно медленно.