К статье
Практический материал

Администрирование · 11 мин

Как ускорить работу 1С 8: от диагностики до настройки сервера и базы

Конкретные способы ускорить 1С 8: настройка сервера, СУБД, индексов, оборудования и типовых конфигураций. Диагностика узких мест и пошаговые действия.

Медленная работа 1С 8 почти всегда имеет конкретную причину, а не «возраст программы». Чаще всего виноваты перегруженный сервер 1С или СУБД, неподходящие настройки SQL Server или PostgreSQL, отсутствие регламентного обслуживания базы, слабые диски или неоптимальные запросы в конфигурации. Прежде чем что-то менять, нужно понять, где именно теряется время: на клиенте, на сервере приложений, в СУБД или в сети.

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

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

Шаг 1. Найдите узкое место: клиент, сервер или СУБД

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

Встроенный инструмент «Замер производительности» (в режиме конфигуратора: Отладка → Замер производительности) покажет, какие строки кода и запросы занимают больше всего времени. Для серверных баз включите технологический журнал с событиями DBMSSQL/DBPOSTGRS и TLOCK — он фиксирует длительные запросы и блокировки.

Полезный ориентир: если запрос к СУБД занимает более нескольких секунд при типовой операции, смотрите план запроса в Management Studio или pgAdmin. Сканирование таблиц вместо поиска по индексу — типичный признак проблемы.

Медленно у всех пользователейПроблема на сервере или в СУБД

Проверьте загрузку CPU, дисков и памяти на сервере СУБД

Медленно только у части пользователейСеть, клиент или антивирус

Сравните скорость с сервера и с рабочего места

Медленно растёт со временемНет регламентного обслуживания

Давно ли обновлялась статистика и делалась реиндексация

Подвисания при параллельной работеБлокировки

Смотрите события TLOCK в технологическом журнале

Шаг 2. Проверьте оборудование: диски, память, процессор

Главный апгрейд для скорости 1С — быстрые диски. База на обычных HDD будет тормозить при любом количестве оперативной памяти, потому что СУБД постоянно читает и пишет данные. Перенос базы на SSD (лучше NVMe или серверные SATA/SAS SSD) часто даёт ускорение в разы без единой настройки.

По памяти ориентируйтесь на размер активной части базы: СУБД должна уметь кэшировать в RAM хотя бы «горячие» таблицы и индексы. Если база 50 ГБ, а памяти на сервере 8 ГБ, диск будет работать постоянно. При этом не выделяйте SQL Server всю память — оставьте запас операционной системе.

Процессор важен для сервера 1С (rphost): там выполняется код конфигурации. Если в диспетчере задач процесс rphost упирается в 100% одного ядра, а остальные простаивают — узкое место в однопоточном коде, и поможет только оптимизация запросов и алгоритмов, а не добавление ядер.

Шаг 3. Настройте СУБД правильно

Для Microsoft SQL Server проверьте ключевые параметры: ограничение максимальной памяти (max server memory), размещение tempdb на быстром диске с несколькими файлами данных, автоматический рост файлов базы фиксированным шагом вместо процентов. Модель восстановления для рабочих баз обычно Full с регулярным бэкапом журнала; Simple подходит, если допустима потеря данных между резервными копиями.

Для PostgreSQL критичны параметры shared_buffers, work_mem, effective_cache_size и настройки автовакуума. Конфигурация по умолчанию рассчитана на слабое железо и почти всегда требует ручной настройки под объём базы и память сервера.

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

sql
EXEC sp_updatestats; -- обновление статистики в MS SQL
ALTER INDEX ALL ON dbo._AccumRg12345 REBUILD; -- перестроение индексов таблицы

Шаг 4. Настройте регламентное обслуживание базы

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

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

Уменьшайте объём данных: свёртка итогов старых периодов, пометка на удаление и физическое удаление ненужных документов, очистка регистров сведений с историей версий. Чем меньше таблицы, тем быстрее запросы и обслуживание.

Порядок регламентного обслуживания
  1. 1
    Сделайте резервную копию базы перед любыми операциями
  2. 2
    Обновите статистику по всем таблицам
  3. 3
    Выполните перестроение или реорганизацию индексов
  4. 4
    Проверьте и очистите избыточные данные (помеченные объекты, старые версии)
  5. 5
    Запланируйте задания на регулярное выполнение в нерабочие часы
  6. 6
    Замерьте время типовых операций до и после — зафиксируйте результат

Шаг 5. Оптимизируйте настройки сервера 1С и кластера

В консоли кластера серверов 1С обратите внимание на количество рабочих процессов и лимиты памяти: если rphost регулярно перезапускается из-за превышения лимита, пользователи ощущают подвисания. Настройте допустимый объём памяти и интервал перезапуска под реальную нагрузку.

Для больших баз включите управляемые блокировки в СУБД (режим управляемых транзакционных блокировок) — в типовых конфигурациях он обычно уже включён. Автоматический режим блокировок при параллельной работе даёт взаимоблокировки и очереди ожидания.

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

Маршрут решения

Как выбрать действие

Техжурнал показывает длительные запросы к СУБДАнализируйте план запроса, проверяйте индексы и статистику
Много событий TLOCK и ожиданий на блокировкахИщите конфликтующие операции, проверяйте режим управляемых блокировок
rphost упирается в 100% одного ядраОптимизируйте код и запросы конфигурации, апгрейд железа не поможет
Диск сервера загружен на 100% в диспетчереПереносите базу на SSD и добавляйте оперативную память

Шаг 6. Оптимизируйте конфигурацию и типовые операции

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

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

Отдельный источник тормозов — отчёты, построенные на полных соединениях больших таблиц без отборов. Добавьте обязательные отборы по периоду, используйте СКД с параметрами вместо «выбрать всё и отфильтровать на клиенте».

Типичные ошибки
01
Менять настройки СУБД без резервной копии — при ошибке база может не подняться
02
Добавлять память и ядра, когда узкое место — медленный диск или код
03
Делать реиндексацию в рабочее время — пользователи получат блокировки и подвисания
04
Игнорировать технологический журнал и гадать по ощущениям
05
Оставлять антивирусное сканирование каталогов базы — постоянные задержки записи

Шаг 7. Проверьте результат и закрепите эффект

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

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

Контрольные точки

Как проверить результат

Время проведения типового документа
Норма

Стабильно быстро и не растёт день ото дня

Тревожный признак

Время плавает или постепенно увеличивается

Загрузка дисков сервера в пик работы
Норма

Диски не упираются в 100% длительное время

Тревожный признак

Диск постоянно занят, очередь растёт

Технологический журнал
Норма

Нет запросов длительностью в десятки секунд

Тревожный признак

Регулярные длительные запросы и TLOCK

Память сервера
Норма

СУБД кэширует данные, нет активного свопа

Тревожный признак

Постоянное использование файла подкачки

Итог

Что важно запомнить

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

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

Ускорит ли работу переход с файловой базы на клиент-серверную?

Да, если пользователей больше нескольких человек и база активно используется. Файловый режим передаёт по сети целые таблицы и плохо переносит параллельную работу. Клиент-серверный вариант с MS SQL или PostgreSQL снимает эти ограничения, но требует грамотной настройки СУБД — сам по себе переход без настройки даёт скромный эффект.

Поможет ли увеличение оперативной памяти серверу?

Только если узкое место — память: СУБД не может кэшировать данные и постоянно читает с диска. Если диски медленные, а памяти достаточно, добавление RAM почти ничего не даст. Сначала проверьте загрузку дисков и объём кэша СУБД, потом принимайте решение.

Как часто нужно делать реиндексацию и обновление статистики?

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

Почему 1С тормозит именно в конце месяца или в отчётный период?

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

Влияет ли антивирус на скорость 1С?

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

Можно ли ускорить 1С без доработки конфигурации?

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