Почему тормозит 1С: 7 частых причин и как их найти

Автор
Нужнов Дмитрий Дмитриевич
Нужнов Дмитрий Дмитриевич
Старший системный администратор / Эксперт по инфраструктуре и стабильной работе ИТ-систем
Время чтения: 8 мин
Дата публикации: 18.09.2026
78

«1С опять тормозит» — фраза, которую слышит любой, кто отвечает за учётную систему в компании. За одной и той же жалобой могут стоять очень разные причины: от устаревшей статистики в базе данных до одной неудачной доработки, из-за которой медленно проводится конкретный документ. Без диагностики легко потратить бюджет не на то — например, купить более мощный сервер, когда узкое место в неоптимальном запросе одного отчёта.

Ниже — семь причин, которые мы чаще всего встречаем в работе, признаки, по которым их можно заподозрить, и замеры, с которых стоит начинать поиск. Речь в основном о клиент-серверном варианте 1С:Предприятия 8 с MS SQL Server или PostgreSQL.

1. Не выполняется регламентное обслуживание базы данных

Со временем в базе данных устаревает статистика распределения данных и фрагментируются индексы. СУБД выбирает план выполнения запроса по статистике, и если она устарела, план может оказаться неэффективным: запрос, который раньше выполнялся за секунды, начинает выполняться минутами.

Для MS SQL Server методические материалы 1С рекомендуют регулярно выполнять обновление статистик, очистку процедурного кэша, дефрагментацию индексов и реиндексацию таблиц. В PostgreSQL за актуальность статистики и очистку устаревших версий строк отвечают VACUUM и ANALYZE — важно, чтобы автоочистка была включена и успевала за нагрузкой.

Признаки: операции обслуживания СУБД (планы обслуживания или задания SQL Server Agent, настройки автоочистки PostgreSQL) давно не выполнялись или завершаются с ошибками; медленнее становятся многие операции. Внезапное замедление отдельных запросов без изменений в конфигурации тоже может быть связано со статистикой: одна из возможных причин — СУБД выбрала другой план запроса.

2. Тяжёлые отчёты, обработки и фоновые задания

Часто основную часть ресурсов сервера забирает одна конкретная операция: отчёт за большой период, обработка, которая перебирает много данных, или регламентное задание самой 1С — обмен данными, обновление полнотекстового индекса. Если запрос написан без учёта индексов или читает лишние данные, он надолго загружает процессор, диск и память сервера СУБД, и другим пользователям ресурсов не хватает.

Важно: обычный отчёт, как правило, не блокирует данные для остальных пользователей — он мешает им тем, что отнимает ресурсы сервера. Этим такая ситуация отличается от конфликтов блокировок (причина 5).

Признаки: замедление возникает эпизодически и совпадает по времени с запуском определённых отчётов, обработок или фоновых заданий; в эти моменты заметно растёт загрузка сервера СУБД. Расписание регламентных заданий 1С стоит проверить отдельно: обмены и обновление полнотекстового индекса в рабочие часы — частый источник периодических «тормозов».

3. Нехватка ресурсов сервера и настройки СУБД

Растут объём базы и число пользователей, а сервер приложений и сервер СУБД остаются прежними. Нагрузка постепенно перерастает возможности оборудования: процессор работает на пределе в часы пик, дисковая подсистема не успевает обрабатывать запросы, оперативной памяти не хватает для рабочего набора данных.

Отдельная частая проблема — СУБД работает с настройками по умолчанию. Для MS SQL Server 1С в общем случае рекомендует устанавливать параметр max degree of parallelism равным 1. Microsoft рекомендует задавать верхний предел памяти SQL Server (параметр max server memory), чтобы операционной системе и другим приложениям, включая сервер 1С на том же компьютере, хватало памяти. Для PostgreSQL параметры памяти, например shared_buffers и work_mem, тоже стоит настраивать под фактическую нагрузку.

Признаки: процессор подолгу загружен до предела, к дискам выстраивается длинная очередь, операционная система активно использует файл подкачки; медленнее работает всё подряд, и сильнее всего — в часы наибольшей нагрузки. При этом высокий объём занятой памяти на сервере MS SQL сам по себе не признак нехватки: при нормальной работе SQL Server занимает память вплоть до заданного предела. В отличие от блокировок (причина 5), здесь сервер действительно перегружен.

4. Сеть и удалённый доступ

Если часть сотрудников работает через тонкий клиент по интернету или через удалённый рабочий стол, ощущение «тормозов» бывает связано не с базой, а с удалённым доступом: узкий или нестабильный канал связи, перегруженный терминальный сервер, неудачные настройки подключения.

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

Признаки: жалобы приходят от конкретных удалённых пользователей или филиалов, а у сотрудников в офисе та же операция выполняется быстро. Для проверки полезно сравнить время одной и той же операции у локального и удалённого пользователя.

5. Блокировки при одновременной работе

Чтобы данные не противоречили друг другу, во время транзакции — например, при проведении документа — изменяемые данные блокируются, и другие пользователи, которым нужны те же данные, ждут. Если блокируется больше данных, чем нужно, пользователи начинают «упираться» друг в друга, особенно при массовом проведении документов, например при закрытии месяца.

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

Признаки: пользователи получают сообщения, которые начинаются со слов «Конфликт блокировок при выполнении транзакции» (дальше текст зависит от режима блокировок и СУБД), встречаются взаимоблокировки. При этом загрузка сервера может быть невысокой: пользователи ждут не ресурсов, а друг друга.

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

В новых версиях платформы 1С:Предприятие нередко появляются оптимизации производительности, а в релизах типовых конфигураций — исправления медленных мест. Если компания годами не обновляется, чтобы «не трогать то, что работает», она может мириться с проблемами, которые в новых версиях уже исправлены.

При этом обновление требует затрат. Для получения обновлений нужен действующий договор 1С:ИТС; обновление доработанной конфигурации требует объединения изменений и тестирования; часть оптимизаций платформы начинает работать только после смены режима совместимости конфигурации.

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

7. Доработки, которые нагружают систему

Накопленные за годы доработки — особенно сделанные разными подрядчиками без общей архитектуры — одна из частых причин снижения производительности. Нестандартная логика не обязательно живёт в отдельных документах: она может находиться в подписках на события, расширениях и изменённых модулях типовых объектов. Дублирующие друг друга обработчики, лишние проверки при записи и «тяжёлые» действия при открытии форм накапливаются незаметно.

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

Как искать причину: сначала замеры

Перебирать причины по одной долго и дорого. Диагностику лучше начинать с объективных данных:

  • замер показателя APDEX по ключевым операциям — методика, которую 1С рекомендует для оценки производительности (в конфигурациях на основе Библиотеки стандартных подсистем для этого есть подсистема «Оценка производительности»). Замеры нужно включить и задать целевое время операций; APDEX показывает, где пользователям плохо, но не объясняет почему;
  • технологический журнал платформы, если его настроить (файл logcfg.xml), — в нём видны длительные запросы к СУБД, ожидания и таймауты блокировок, взаимоблокировки;
  • проверка регламентного обслуживания СУБД — когда и с каким результатом последний раз выполнялись операции из причины 1;
  • мониторинг загрузки серверов СУБД и 1С в течение нескольких дней, а не в момент единичной жалобы;
  • расписание регламентных и фоновых заданий 1С.

Итог

«Тормозит 1С» — это симптом, а не диагноз. За ним может стоять одна причина или несколько сразу, и без замеров легко выбрать не те меры: купить новый сервер, когда пользователи ждут друг друга на блокировках, или заказать доработку, когда достаточно наладить обслуживание СУБД. Сбор данных занимает время, но позволяет выбирать меры по фактам, а не наугад.

Если 1С стала работать медленнее, а причина не очевидна, — напишите нам: подскажем, с каких замеров начать, и поможем найти узкое место.

Источники

  • Регламентные операции на уровне СУБД для MS SQL Server — методические материалы 1С:ИТС для разработчиков и администраторов — its.1c.ru
  • Настройка параметра max degree of parallelism при выполнении реструктуризации информационной базы (включая общую рекомендацию для рабочего режима) — методические материалы 1С:ИТС — its.1c.ru
  • Методика расследования ошибок блокировок — методические материалы 1С:ИТС — its.1c.ru
  • Оценка производительности и оптимизация многопользовательской системы: общий подход — методические материалы 1С:ИТС — its.1c.ru
  • Параметры конфигурации памяти сервера — Microsoft Learn, «Server memory configuration options» — learn.microsoft.com
  • Регулярная очистка базы данных (VACUUM, ANALYZE) — документация PostgreSQL, «Routine Vacuuming» — postgresql.org
telegram

Заказать звонок

Сообщение отправлено

Спасибо за обращение, мы свяжемся с вами для уточнения деталей.

Заявка отправлена

Спасибо за обращение, мы свяжемся с вами для уточнения деталей.

Ваш комментарий отправлен

Он появится после проверки модератора.