Оптимизация 1С — как ускорить базу без замены сервера

Документ открывается 12 секунд. Закрытие месяца — два дня. Бухгалтер уходит в 23:00, потому что отчёт «крутится». Знакомо? В 7 случаях из 10 виноват не сервер, а настройки — и устранить это можно за 1–3 дня без покупки нового железа. 20 точек оптимизации в порядке приоритета.

Признаки медленной 1С — когда пора оптимизировать

Если хотя бы 3 из 6 совпадают — пора оптимизировать (а не покупать сервер):

СимптомНормаТревога
Открытие документа реализации< 2 сек> 5 сек
Проведение документа< 3 сек> 10 сек
Формирование ОСВ за месяц< 30 сек> 2 мин
Закрытие месяца1–2 часа1+ рабочий день
Регламентные заданияукладываются в окнопадают по таймауту
Конфликт блокировок< 5/день20+/день, операторы видят «ожидание блокировки»

Дополнительно: база > 30 ГБ, в одной таблице > 4 ГБ (для файлового режима критично — перестаёт открываться).

Базовый разбор причин тормозов — в статье «1С тормозит: 5 причин». Здесь — что конкретно крутить.

20 точек оптимизации — таблица с приоритетами

Сортировка: от «10 минут работы — большой эффект» к «нужен 1С:Эксперт».

ТочкаЭффектСложностьКогда применять
1Очистка журнала регистрации (ЖР)+5–15%30 мин, ИТВсегда, особенно если ЖР > 5 ГБ
2Отключение детальных событий ЖР+10–20%10 мин, в Конфигураторе20+ пользователей
3Перенос регламентных заданий на ночь+20–40% днём1 час, без программистаВсегда. Большинство не настроено
4Отключение лишних регламентных+5–15%30 минПосле аудита списка заданий
5Тестирование и исправление базы (ТИИ)+10–30%2–6 часов в монопольномРаз в квартал. Перед обновлением — обязательно
6Реиндексация таблиц СУБД (REBUILD INDEX)+20–50% на отчётах1–3 часа, ночьюРаз в месяц при базе > 20 ГБ
7Обновление статистики СУБД+10–25%30 минЕженедельно. Часто забывают
8Обновление платформы 8.3.26++10–30%1 день, нужен тестЕсли на 8.3.20 и старше
9Перевод файловой базы на серверный режимв 2–5 раз1–3 дняЕсли пользователей > 5 или база > 5 ГБ
10Настройка PostgreSQL (shared_buffers, work_mem)+20–40%1–2 часаЕсли PG стоит «из коробки»
11Перенос tempdb на SSD (MS SQL)+15–30%1 часЕсли tempdb на HDD
12Свёртка базы (закрытие старых периодов)в 2–10 раз3–7 днейБаза > 50 ГБ, документы > 5 лет
13Оптимизация динамических списковв 5–20 раз для конкретного списка4–16 часов программистаЖурналы где «крутится» при открытии
14Установка SSD вместо HDDв 5–15 разжелезо + 4 часаЛюбая база на HDD — это смерть
15Анализ длительных запросов через ТЖ (DBCALL > 1 сек)+30–70% на тяжёлых отчётах2–5 дней ЭкспертаЕсли есть «вечные» отчёты
16Расшивка блокировок (TLOCK, TDEADLOCK)в десятки раз снижение конфликтов5–15 дней ЭкспертаЕсли 5+ конфликтов в день
17Реструктуризация v2 (с 8.3.20+)сокращает окно обновления в 3–4 разавключить в кластереПри больших базах
18Доп. индексы на часто фильтруемые реквизиты+20–80% на конкретных списках1–3 дняЖурналы документов с фильтрами (с 8.3.26 без снятия с поддержки)
19Перезапуск rphost по расписаниюстабильность, +10–15%30 минСерверная база
20Переезд в облако с гарантией ресурсовв 2–4 раза + стабильность1–2 дняКогда сервер на пределе

С чего начать — первые 5 шагов которые дают +30–50%

Если у вас на руках есть только 1 рабочий день — делайте эти 5 пунктов в таком порядке:

  1. Чистка журнала регистрации. Конфигуратор → Администрирование → Журнал регистрации → удалить записи старше 30–90 дней. Если ЖР занимает 10+ ГБ — уже здесь почувствуете разгон
  2. Перенос регламентных на ночь. Особенно «Полнотекстовый поиск» (запускается каждые 2,5 минуты!), «Перепроведение документов», «Обмен данными». Расписания — 23:00–06:00
  3. Тестирование и исправление. Конфигуратор → Администрирование → Тестирование и исправление. С бэкапом! В монопольном режиме
  4. Обновление статистики СУБД. Для PostgreSQL: ANALYZE на всех таблицах. Для MS SQL: UPDATE STATISTICS
  5. Перезапуск кластера 1С. Очистка кэшей, сброс «старых» rphost. На многих серверах rphost накапливают по 10 ГБ памяти за неделю

За 1 день эти 5 шагов дают +30–50% скорости на типичной базе. Без замены железа.

Свёртка базы — когда нужна и что меняется

Что это: программа определяет дату (обычно 1 января), считает остатки на эту дату, делает документ «Ввод остатков», все документы старше — удаляет или помечает. Остаются только остатки + актуальный год.

Когда нужна:

  • База > 50 ГБ (для МСБ обычно симптом 5+ лет работы)
  • Размер любой таблицы приближается к 4 ГБ (файловый режим — критично, перестаёт открываться)
  • Закрытие месяца идёт > 1 дня
  • Реструктуризация при обновлении занимает > 8 часов

Что меняется:

  • База уменьшается в 3–10 раз (типично с 80 ГБ до 12 ГБ)
  • Скорость отчётов растёт пропорционально
  • Теряется детализация по старым периодам — отчёт за 2021 год построить уже нельзя
  • Сверка с контрагентами по старым периодам — только из архивной копии

Время: от 6 часов до 3 суток (зависит от объёма и СУБД). Обязательно: бэкап, монопольный режим, тестовый прогон.

Альтернатива: оставить «архивную» базу для отчётов прошлых лет и работать в свёрнутой.

Технологический журнал — что смотреть IT-специалисту

ТЖ настраивается через файл logcfg.xml. Включается на ограниченное время (час, день — иначе диск заполнится).

5 событий-маркеров тормозов

СобытиеЧто значитТревога если
CALL / SCALLСерверный вызов клиент-серверДлительность > 1 сек регулярно
DBCALLЗапрос к СУБД (с текстом и временем)> 1 сек, особенно если повторяется
EXCPИсключение / ошибка платформыЛюбое массовое появление
TLOCKУправляемая блокировка — кто, на что, как долгоДлительность > 5 сек
TDEADLOCK / TTIMEOUTДедлок или превышение таймаутаЛюбое — повод для расследования

Что искать первым делом:

  1. Топ-10 DBCALL по длительности — источник тормозов
  2. Топ-5 TLOCK — кто блокирует и кого
  3. EXCP вокруг времени жалоб пользователей

Парсить можно: regex, OneScript, готовые конфигурации с Infostart, утилита Гилёва.

Платформа 8.3.X — что нового для производительности

Обновление платформы с 8.3.20 на 8.3.26 — +10–30% производительности «бесплатно». Без переписывания кода. Тестировать обязательно на копии.

  • 8.3.24 — уменьшено время первого обращения к большим табличным макетам. Кэш кластерных данных снижает сетевую нагрузку
  • 8.3.25 — индексы и уникальные индексы на временных таблицах (ускорение запросов разработчика)
  • 8.3.26 (актуальный на апрель 2026) — оптимизация работы сервера на большом числе ядер. Возможность создавать дополнительные индексы для объектов конфигурации без снятия с поддержки. Оптимизация записи событий ТЖ

Настройка PostgreSQL для 1С — ключевые параметры

Для типового сервера 32 ГБ RAM, 50 пользователей. Источник — рекомендации 1С:ИТС.

ПараметрЗначениеЗачем
shared_buffers25% от RAM (8 ГБ)Кэш данных PG. Больше не нужно — ОС сама кэширует
effective_cache_size50–75% RAM (16–24 ГБ)Подсказка планировщику
work_mem32–128 МБПамять на сортировку. Мало — пишет на диск, много — OOM
maintenance_work_mem1–2 ГБДля VACUUM, CREATE INDEX, REINDEX
max_connectionsпо числу активных сессий + 20%Не «1000 на всякий случай» — каждое соединение ест RAM
random_page_cost1.1 для SSD (по умолчанию 4.0 — для HDD)Иначе планировщик избегает индексов на SSD
effective_io_concurrency200 для SSDПараллельные I/O

Правильная настройка PG даёт +30% производительности на тех же ресурсах. Часто после установки PG стоят дефолтные значения от разработчиков PostgreSQL — они не учитывают специфику 1С.

Сервер vs облако — когда оптимизация уже не помогает

Норма от 1С: 8 ГБ RAM на каждые 100 пользователей сервера 1С. На практике для МСБ с тяжёлыми отчётами — в 2 раза больше.

ПользователейRAM (минимум)RAM (комфорт)Тип
2–54 ГБ8 ГБФайловый ОК
5–108 ГБ16 ГБФайловый или сервер
10–2010 ГБ16 ГБТолько сервер (PG/MSSQL)
20–5016 ГБ32 ГБСервер обязательно
50–10032 ГБ48 ГБСервер + SSD + балансировка
100+48–64 ГБ64–128 ГБКластер 1С, разные базы на разные rphost

Когда оптимизация уже не помогает (повод в облако):

  • RAM использован на 95%+ постоянно
  • Диск 100% busy в рабочее время
  • CPU 80%+ постоянно при 30 пользователях
  • При добавлении 1 пользователя падает производительность всех

Сравнение хостинга — в статье «1С: свой сервер или облако». Наш облачный сервер 1С с гарантией ресурсов — /oblako от 25 000 ₽/мес.

Реальные цифры из практики

Кейс 1: Оптовая торговля, 45 пользователей, УТ 11

  • Было: проведение реализации 18 сек, ОСВ 4 минуты
  • Сделали: чистка ЖР (15 ГБ → 200 МБ), перенос регламентных на ночь, реиндексация СУБД, обновление платформы 8.3.18 → 8.3.26
  • Стало: проведение 4 сек, ОСВ 35 сек
  • Срок: 3 дня, без замены сервера

Кейс 2: Производство мебели, 28 пользователей, ERP

  • Было: дедлоки 30+ раз в день, закрытие месяца 14 часов
  • Сделали: анализ ТЖ (нашли 3 запроса с DBCALL > 8 сек), переписали один отчёт, изменили порядок проведения, настроили PG
  • Стало: дедлоков 1–2 в неделю, закрытие месяца 4 часа
  • Срок: 8 рабочих дней Эксперта

Кейс 3: Услуги, 15 пользователей, Бухгалтерия 3.0

  • Было: база 78 ГБ, открывается 90 сек, отчёты падают по памяти
  • Сделали: свёртка базы на 01.01.2024 (78 ГБ → 9 ГБ), реструктуризация v2, остальное по чек-листу
  • Стало: открытие 6 сек, отчёты за секунды
  • Срок: 5 дней + 1 неделя на проверку остатков

Стоимость оптимизации и сроки

  • Базовый чек-лист (пункты 1–7 из таблицы) — 15 000–30 000 ₽, 1–2 дня
  • Полный аудит с техжурналом и расшивкой блокировок — 80 000–200 000 ₽, 5–15 рабочих дней
  • Свёртка базы — 25 000–60 000 ₽, 3–7 дней
  • Перевод на серверный режим (PostgreSQL) — 30 000–80 000 ₽, 1–3 дня

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

Базовый чек-лист (чистка ЖР, регламентные на ночь, ТИИ, обновление статистики) — 15–30 тыс. ₽, 1–2 дня. Полный аудит с техжурналом и расшивкой блокировок — 80–200 тыс. ₽, 5–15 рабочих дней. Свёртка базы — 25–60 тыс. ₽.

Чистку ЖР, перенос регламентных на ночь, ТИИ базы, обновление статистики, перезапуск rphost — может администратор. Всё что глубже (анализ техжурнала, расшивка блокировок, оптимизация запросов) — нужен 1С:Эксперт по технологическим вопросам.

Поможет частично. Главная рекомендация — переход на сервер (PostgreSQL бесплатный). Файловый режим на 25 ГБ — миллисекунды до отказа. Файловая база на сетевой шаре не выдерживает 5+ одновременных пользователей.

Раз в квартал — обязательно. Перед обновлением конфигурации — обязательно. После сбоя питания — сразу. На большой базе ТИИ идёт от 4 до 24 часов.

Если стоит HDD — поможет всегда, в 5–15 раз. Если уже SSD — искать причину глубже (СУБД, блокировки, код, регламентные).

Если CPU/RAM/диск загружены на 80%+ при текущем числе пользователей — упёрлись в железо. Переезд в облако с гарантией ресурсов обычно дешевле и быстрее покупки нового сервера.

Бесплатная диагностика 1С за 2 часа

Подключимся удалённо, включим техжурнал, найдём топ-10 узких мест и посчитаем что даст +30% за 3 дня. Если не ускорим в 2 раза — не возьмём денег.

Первая линия 1С — 24/7. Менеджер за 15 минут в рабочее время или 3 дня бесплатно.

Заказать диагностику →

Читайте также

Нужна помощь с 1С?

Перезвоним за 15 минут, разберёмся в ситуации, предложим решение. Без давления.

Шаг 1 из 5

Какая задача стоит перед вами?

БО
Безопасный Офис
Обычно отвечаем за 15 мин

Здравствуйте! Чем можем помочь? Выберите удобный способ связи:

Написать в Telegram Позвонить +7 931 111-20-21