Медленная 1С 8.3: как найти узкое место и вернуть скорость

· 11 мин

Содержание

Программа 1С 8.3 очень медленно работает чаще всего по одной из пяти причин: файловая база лежит на сетевой папке, антивирус проверяет каждый файл базы, переполнен кэш пользователя, база разрослась без обслуживания или в фоне крутятся тяжёлые регламентные задания. Первые три устраняются за полчаса без программиста. Остальное требует доступа администратора, а иногда и разбора конфигурации.

Почему 1С тормозит именно у вас, видно по симптому. Медленно у одного пользователя — ищите на его компьютере. Медленно у всех и в одно время — смотрите сервер, сеть и фоновые задачи. Медленно в одном отчёте или документе — виноват запрос или доработка.

С чего начать, если 1С работает медленно: быстрая диагностика

Не меняйте всё сразу. Сначала соберите четыре факта — они сужают поиск в разы.

  1. Кого касается. Один компьютер, один отдел или все пользователи.
  2. Когда началось. После обновления, переезда на новый компьютер, установки антивируса, роста числа пользователей.
  3. Что именно тормозит. Запуск программы, открытие списков, проведение документов, отдельный отчёт, обмен.
  4. Тип базы. Файловая или клиент-серверная. Это видно в списке баз: у файловой в строке пути указан каталог (File=...), у серверной — имя сервера и базы (Srvr=...;Ref=...).

Затем откройте «Диспетчер задач» Windows на вкладке «Производительность» и повторите медленную операцию. Процессор под 100% — не хватает вычислений или зациклился процесс. Диск под 100% — медленный носитель или антивирус. Память забита и растёт файл подкачки — нужна оперативная память.

Порядок проверки тормозов 1С
Выполнено: 0 / 8

Запишите, сколько секунд занимает медленная операция до изменений. Без замера «стало быстрее» — это ощущение, а не результат.

Слабое железо: когда компьютер не тянет 1С 8.3

Платформа 8.3 с современными конфигурациями (БП 3.0, ЗУП 3.1, УТ 11) заметно тяжелее старых версий. То, что летало пять лет назад, сегодня может еле ползти.

Ориентиры для рабочего места с файловой базой или тонким клиентом:

КомпонентБудет тормозитьРаботает комфортно
Оперативная память4 ГБ8 ГБ и больше
ДискHDD 5400–7200 об/минSSD, лучше NVMe
Процессор2 ядра старше 8–10 лет4 ядра с высокой частотой на ядро
Разрядность системы32-битная Windows64-битная 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). Медленное соединение на любом из этих этапов даёт тормоза.

Что проверить:

  1. Задержку между клиентом и сервером: ping до сервера 1С по имени. Больше 1–2 мс в локальной сети — повод разобраться с сетью.
  2. Что имя сервера разрешается быстро. Если DNS отвечает с задержкой, медленным становится каждый запуск. Добавьте имя сервера в hosts для проверки.
  3. Что сервер 1С и сервер СУБД находятся в одной быстрой сети или на одной машине. Задержка между ними умножается на число запросов.
  4. Для удалённых сотрудников используйте тонкий клиент через веб-сервер или терминальный сервер , а не толстый клиент по VPN.

Устаревшая платформа или релиз конфигурации

Каждая конфигурация требует платформу с номером не ниже указанного в описании релиза. Работа на старой платформе иногда возможна, но часть механизмов работает медленнее или с ошибками.

Посмотреть версии можно в программе: Справка → О программе (кнопка с буквой «i» или вопросом в правом верхнем углу). Там указаны и платформа, и релиз конфигурации.

На что влияет обновление:

  • ⚙️ в новых версиях платформы оптимизируют работу с СУБД и кэширование;
  • 📦 в релизах типовых конфигураций исправляют медленные запросы, которые сами разработчики нашли в отчётах и проведении;
  • 🧩 устаревший релиз в сочетании с новой платформой тоже бывает источником проблем — держите версии согласованными.

Перед обновлением конфигурации сделайте выгрузку базы в .dt. Если конфигурация доработана, обновление делает программист: при неудачном сравнении и объединении доработки потеряются.

Обратная ситуация: тормоза начались сразу после обновления. Тогда первое действие — очистить кэш (следующий раздел), второе — проверить, не изменился ли состав регламентных заданий.

Повреждённый кэш, вирусы и редкие причины тормозов

Кэш пользователя

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

Как очистить:

  1. Закройте все сеансы 1С на этом компьютере.
  2. Откройте каталоги %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 через строку адреса Проводника.
  3. Удалите папки с длинными именами вида xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Файлы со списком баз (ibases.v8i) и папку 1cv8\ не трогайте.

Альтернатива без ручного удаления: в окне запуска выделите базу, нажмите «Изменить», дойдите до последней страницы и впишите в «Дополнительные параметры запуска» /ClearCache. Запустите базу один раз, затем параметр уберите.

Вирусы и повреждённые файлы

Майнер или другое вредоносное ПО грузит процессор, и тормозит всё, не только 1С. Проверьте в диспетчере задач, кто потребляет ресурсы, и запустите полную проверку антивирусом.

Повреждённые файлы платформы проявляются странно: ошибки при открытии форм, падения, медленный запуск. Лечится переустановкой платформы той же версии из дистрибутива.

Редкие, но критичные причины

  • 🖨️ Недоступный сетевой принтер по умолчанию. Печатные формы и предпросмотр открываются по 20–30 секунд, пока Windows ждёт ответа от принтера.
  • 💾 Почти заполненный диск. Когда свободно меньше 5–10%, временные файлы и файлы базы растут с трудом.
  • 🔒 Конфликт блокировок. У всех «висит» проведение, пока один пользователь проводит большой документ или перепроводит месяц. В серверной базе посмотрите сеансы в консоли администрирования кластера.
  • 🧵 Режим управляемых блокировок и старые доработки. Доработанные конфигурации с автоматическими блокировками под нагрузкой ждут друг друга чаще.
  • 🖥️ Терминальный сервер без ресурсов. Двадцать сеансов на сервере с 16 ГБ памяти — каждому меньше гигабайта. Это неизбежно медленно.
Диагностика: выберите симптом

Частые вопросы

Поможет ли перевод на 64-битную платформу?
Да, если на компьютере больше 4 ГБ памяти. 32-битный клиент не использует больше примерно 2–4 ГБ, и на больших базах это ограничение заметно. Для сервера 1С используйте только 64-битную версию.
Тонкий клиент работает быстрее толстого?
По сети и через интернет — да, потому что по каналу передаются данные форм, а не данные базы. На локальной файловой базе разница небольшая.
Сколько пользователей выдерживает файловая база?
Жёсткого лимита нет, но на практике при 5–10 одновременных пользователях тормоза и конфликты блокировок становятся заметными. Дальше нужен клиент-серверный вариант или публикация через веб-сервер.
Почему 1С медленно запускается, а потом работает нормально?
Обычно это проверка лицензии, загрузка кэша после обновления или медленное разрешение имени сервера в сети. Первый запуск после обновления конфигурации всегда дольше обычного.
Ускорит ли работу удаление старых документов?
Иногда, но это крайняя мера. Обычно правильнее свернуть базу штатной обработкой или начать новую базу с переносом остатков. Удалять документы вручную в рабочей базе нельзя: нарушатся остатки и отчётность.