Перейти к содержимому
Tez Base

Тяжёлые базы и диагностика

Оптимизация производительности 1С

Находим настоящую причину, почему 1С тормозит и как ускорить её работу - по технологическому журналу и планам запросов, а не наугад. Ускоряем проведение документов, отчёты и обмены в разы. Удалённо по всему Казахстану и СНГ.

Написать в WhatsApp Получить бесплатный экспресс-аудит

часы → минуты типичный результат по "тяжёлым" операциям

150 000 - 450 000 ₸ стоимость · ТЗ и оптимизация под ключ, без налогов доработки сверх плана - единым счётом по факту диагностики

Scan нашли, где тормозит

Выберем медленную операцию и измерим её

Начинаем с конкретного действия: проведение документа, открытие списка, отчёт или обмен. Фиксируем время и условия выполнения, находим причину задержки и согласуем изменения. Такой замер позволяет проверить эффект на вашей задаче.

Что подготовить к диагностике

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

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

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

Кратность ускорения и целевое время согласуются после диагностики. Большой размер базы сам по себе не доказывает причину торможения; необходимость свёртки или замены оборудования определяется по замерам.

Описать замедление в WhatsApp

Знакомые проблемы?

Документы проводятся минутами

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

Пользователи "ловят" блокировки

"Конфликт блокировок", "превышено время ожидания" - работа встаёт, когда в базе много народу, особенно в пиковые дни.

Отчёты строятся вечность

Управленческие отчёты и ОСВ по большим периодам строятся десятками минут или падают по таймауту.

Железо усилили - не помогло

Купили сервер мощнее, а быстрее не стало. Значит, дело не в железе, а в запросах, индексах или архитектуре.

Почему 1С тормозит и почему новый сервер обычно не помогает

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

Как мы ищем причину

  • Технологический журнал 1С - настраиваем сбор событий по длительным запросам и ожиданиям на блокировках; получаем точную картину, какие операции и чей код съедают время.
  • Планы запросов SQL - смотрим, как СУБД на самом деле выполняет тяжёлые запросы: сканирования вместо поиска по индексу, лишние соединения, неоптимальные вложенные запросы.
  • Статистика ожиданий СУБД - определяем, во что упирается сервер: диски, процессор, блокировки, память.
  • Замеры АПДЕКС по ключевым операциям - фиксируем скорость глазами пользователя, а не “в среднем по больнице”.

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

Типовые находки

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

Свежие результаты из боевых проектов

  • Список чеков под кассиром: 25 секунд → мгновенно (505 410 → 4 логических чтения) - индексы под кассовые операции плюс разбор механизма разграничения доступа.
  • Шесть тяжёлых управленческих отчётов: −22…−42 % времени - при полностью идентичных данных: результат “до” и “после” сверялся контрольной суммой SHA-256, не “на глаз”.
  • “Вечерние зависания касс”: блокировок оказалось ноль - тормозил агрессивный параллелизм SQL на 48-ядерном сервере (заводские cost threshold = 5, MAXDOP = 0). Две настройки - и пик перестал быть лотереей. Классический пример, почему сначала измеряют, а потом покупают железо.
  • Документ, который “не проводился” 2 минуты → 17 секунд - запрос остатков в цикле по каждой строке переписан на один set-based запрос.
  • Часть отчётов после разбора оставлена без изменений - узкое место было не в запросе, и переписывание не дало бы выигрыша. Не тратить ваш бюджет на то, что не ускорится, - тоже результат.

Подробный разбор самого крупного проекта - в кейсе “Обрезка базы 4,2 ТБ → 105 ГБ”.

Ускорение 1С на сервере SQL

Отдельный пласт - настройка СУБД под 1С: параметры памяти и параллелизма, tempdb, автообновление статистики, обслуживание индексов. Типовые установки “по умолчанию” рассчитаны на абстрактную нагрузку, а не на профиль 1С. Настраиваем и MS SQL, и PostgreSQL - включая миграции с одного на другой.

Что вы получаете

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

Как мы работаем

  1. 01

    Замер и фиксация симптомов

    Собираем список медленных операций и замеряем текущие показатели - от них будем считать эффект.

  2. 02

    Диагностика

    Технологический журнал, планы запросов SQL, статистика ожиданий. Находим конкретные строки кода и запросы-виновники.

  3. 03

    Оптимизация

    Правим запросы и код, настраиваем индексы, устраняем блокировки. Каждое изменение проверяем замером.

  4. 04

    Контроль результата

    Показываем "до/после" по каждой операции из списка. Настраиваем мониторинг, чтобы деградацию было видно заранее.

Бесплатный экспресс-аудит вашей 1С

За 1-2 дня посмотрим вашу базу, найдём, где теряется производительность, и скажем, что с этим делать. Без обязательств.

Получить бесплатный экспресс-аудит

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

1С тормозит - может, просто купить сервер мощнее?

Чаще всего это не помогает: причина обычно в запросах, индексах или блокировках, а не в железе. Сначала диагностика - она точно покажет, где узкое место. Если дело действительно в железе, мы так и скажем и посчитаем, какое обновление даст эффект.

Нужно ли останавливать работу на время оптимизации?

Нет. Диагностика идёт на работающей системе и не мешает пользователям. Изменения кода и индексов отрабатываются на копии и переносятся в продуктив в согласованные окна - обычно ночью.

У нас нетиповая (доработанная) конфигурация. Это проблема?

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

Какой эффект можно ожидать?

Типичный результат по "тяжёлым" операциям - ускорение в разы: отчёты с десятков минут до минут, проведение с минут до секунд. Перед началом мы фиксируем замеры, после - показываем "до/после" по каждой операции. Платите за подтверждённый результат.

1С стала тормозить после обновления. Поможете?

Да, это частый сценарий: после обновления меняются запросы и слетает статистика СУБД. Находим, что именно изменилось, и возвращаем скорость - обычно это занимает от нескольких дней.

Почему 1С долго проводит документы?

Обычно виноват не объём данных, а как написан код проведения: запросы остатков в цикле по строкам документа, получение остатков внутри транзакции, избыточные блокировки, устаревшая статистика СУБД. В нашей практике документ, который "висел" 2 минуты, после переписывания логики на set-based запрос стал проводиться за 17 секунд. Диагностика по техжурналу показывает виновника с точностью до строки кода.

1С долго формирует отчёты - что делать?

Сначала замерить и разобрать запрос отчёта: частые причины - лишние проходы по регистрам, построчное обращение к справочникам, дубли фильтров, неактуальная статистика. Мы переписываем узкие места и доказываем идентичность данных контрольной суммой SHA-256 - "до" и "после" совпадают побайтово. Типичное ускорение тяжёлых отчётов - на 22-42 %, отдельные веб-выгрузки - в 3-8 раз.

Что делать, если 1С зависает?

"Зависает" - это чаще всего ожидание на блокировках или тяжёлая операция, которая держит сеанс. Настраиваем сбор техжурнала и статистики ожиданий, находим, кто и что блокирует. В одном проекте "вечерние зависания касс" оказались не блокировками (их было ноль), а агрессивным параллелизмом SQL на 48-ядерном сервере - двух настроек хватило, чтобы пик перестал "залипать".

Обсудим задачу

Быстрее всего в WhatsApp: напишите пару строк о задаче, ответим в течение рабочего дня.

[email protected]

Удобнее оставить заявку через форму

Смежные услуги