«1С тормозит» — самая частая жалоба, с которой ко мне приходят, и самая неконкретная. Медленная база, зависание на проведении, «не открывается по сети», отчёт на полчаса — за этим стоят разные причины, и лечатся они по-разному. Ниже — то, что я вижу чаще всего за 27 лет в ИТ и 13 лет с 1С в компании на 200+ рабочих мест.
Файловый режим 1С рассчитан на несколько пользователей и базу до пары гигабайт. Когда база растёт, а людей становится больше, тормозит всё: проведение документов, отчёты, поиск. Симптом: тормозит «по сети», а на самом сервере работает сносно.
Что делать: Переход в клиент-серверный режим (сервер 1С + PostgreSQL или MS SQL). Это не «купить сервер помощнее», а другая архитектура — и обычно единственное настоящее решение.
PostgreSQL и MS SQL из коробки настроены под «среднюю» нагрузку, а не под 1С. Не хватает памяти под кэш, автовакуум не успевает, статистика устарела, регламентные операции (реиндексация, обновление статистики) не выполняются.
Что делать: Настройка параметров СУБД под объём базы и память сервера, расписание регламентных операций, контроль фрагментации. Часто даёт кратный прирост без изменения кода.
Новый релиз конфигурации изменил структуру таблиц или добавил механизмы (например, обновление индекса полнотекстового поиска, пересчёт итогов), и база несколько дней «переваривает» это. Или обновление платформы сменило поведение планировщика запросов.
Что делать: Смотрю технологический журнал и журнал регистрации, нахожу конкретный долгий запрос или фоновое задание. Бывает, достаточно один раз выполнить пересчёт итогов и обновить статистику.
Несколько пользователей проводят документы по одним и тем же остаткам, и они ждут друг друга. Симптом: «зависает» на проведении, иногда появляется «конфликт блокировок» или «превышено время ожидания».
Что делать: Разбор по технологическому журналу: кто кого блокирует, на каком объекте. Дальше — настройка режима управляемых блокировок, доработка проблемных документов или перенос тяжёлых операций на ночь.
Написанные «под задачу» обработки и отчёты, запросы в цикле, отбор по неиндексированным полям. Одна такая обработка при запуске кладёт базу для всех.
Что делать: Нахожу конкретные запросы по замерам, даю программисту точное ТЗ на переписывание — или переписываю сам, если доработка небольшая.
Индекс полнотекстового поиска обновляется в рабочее время, регламентные задания (обмены, загрузки, рассылки) запускаются в пик нагрузки.
Что делать: Перенос индексации и регламентов на ночь, отключение ненужных заданий, проверка, что обмены не висят с ошибкой и не перезапускаются каждые пять минут.
Терминальный сервер, сервер 1С и СУБД на одной машине с недостатком памяти; база на медленных дисках; сеть 100 Мбит между клиентом и сервером; антивирус проверяет файлы базы.
Что делать: Разнос ролей по серверам или виртуальным машинам, SSD под базу, исключения антивируса, проверка сети. Это самая простая часть — и её стоит проверить первой.
Не гадаю: включаю технологический журнал 1С, снимаю замеры производительности, смотрю нагрузку на СУБД и сервер в момент жалоб. Через день-два есть список конкретных запросов, заданий и настроек, которые тормозят, — с приоритетами и оценкой, что даст каждое исправление. Перед любыми изменениями — резервная копия и точка отката.
Подробнее об услуге: сопровождение и ускорение 1С. Реальные случаи — в кейсах на той же странице: переход с MS SQL на PostgreSQL без остановки работы, разбор взаимоблокировок после перехода на БП КОРП.
Обычно база доросла до предела файлового режима, накопилась фрагментация и устарела статистика СУБД, либо вышло обновление, изменившее структуру данных. Реже — новая тяжёлая обработка или регламентное задание. Найти точную причину помогает технологический журнал: он показывает, какой запрос и кого тормозит.
Почти наверняка файловая база: каждый клиент тянет файл базы по сети целиком. Помогают терминальный доступ к серверу как временная мера и переход на сервер 1С с PostgreSQL или MS SQL как настоящее решение.
Чаще нет. Сначала стоит настроить СУБД под 1С, разнести роли, перенести регламенты на ночь и найти тяжёлые запросы. Новое железо покупают, когда замеры показывают упор в процессор или диск — а не «на всякий случай».
Не спешите. Часто это разовые процессы после обновления: пересчёт итогов, обновление индекса поиска, перестроение таблиц. Проверяю технологический журнал, если нужно — выполняю пересчёт и обновляю статистику. Откат — крайняя мера, и делать его без резервной копии нельзя.
Зависит от причины. Настройка СУБД и регламентов — небольшая разовая работа; переход с файловой базы на сервер — проект на несколько дней; переписывание доработок — по ТЗ. Первый шаг всегда бесплатный: диагностика, после которой называю цену и срок, и цена по ходу не растёт.
Часть причин — да: железо, сеть, антивирус, регламенты, настройки СУБД. Если тормозят конкретные документы или отчёты из-за кода — нужен программист, но с точным ТЗ по замерам это занимает часы, а не недели.
Напишите, что происходит: файловая или серверная, сколько пользователей, когда началось. Первый шаг — бесплатная диагностика, потом цена и срок.