В этой статье мы разберем пошаговую методику оценки производительности 1С, научимся находить узкие места и устранять их без замены сервера за миллион рублей.
Материал будет полезен и тем, у кого 1С работает в файловом режиме (на общей папке), и тем, у кого развернут мощный кластер на обслуживании сервера 1С.
Не ждите, пока пользователи начнут бить клавиатурами. Проведите оценку производительности 1С при первых симптомах:
Чем раньше начать оценку производительности 1С, тем проще и дешевле будет лечение. На запущенных стадиях может потребоваться не только настройка, но и замена железа.
Мы будем проводить оценку производительности 1С поэтапно, от простого к сложному.
Уровень 1. Инфраструктура и сетьПроверьте скорость локальной сети между клиентами и сервером 1С. Норма — 100 Мбит/с и выше, задержки менее 5 мс.
Убедитесь, что антивирус не сканирует папки с базами 1С в реальном времени (исключения должны быть настроены).
Для файлового режима: проверьте, не открыта ли база по Wi-Fi (это всегда медленно).
Оценка производительности 1С начинается с сетевого теста. Проще всего скопировать архив базы с сервера на рабочую станцию — если копия идет 20 минут вместо 2, проблема в сети.
Уровень 2. Железо и СУБДЕсли база работает в режиме клиент-сервер (MS SQL / PostgreSQL), проверьте:
Объем оперативной памяти на сервере 1С — должно быть не менее 50% всей памяти под SQL (но не в ущерб ОС).
Дисковую подсистему. Для 1С критичен случайный ввод-вывод (IOPS). Если база лежит на одном HDD с системой — это большая ошибка.
Процессор: смотрите на среднюю загрузку в пиковые часы. Если 90% и выше — нужна оптимизация запросов или апгрейд.
Оценка производительности 1С на уровне СУБД обязана включать анализ планов запросов и поиск «тяжелых» операций (сканирование таблиц, сортировки).
Уровень 3. Настройка самого сервера 1СДля клиент-серверного варианта используется «Сервер 1С: Предприятия». Обратите внимание на:
Количество рабочих процессов (rphost) — их должно быть не меньше, чем число логических ядер на сервере.
Размер буфера данных для каждого процесса.
Регламентные задания. Некоторые из них (например, перестроение индексов) могут съедать ресурсы и блокировать пользователей.
Правильная оценка производительности 1С включает просмотр консоли кластера и технологического журнала.
Уровень 4. Конфигурация и код (отчеты, доработки)Чаще всего тормозит не сервер, а кривой отчет, который выбирает миллион записей «по всему» и сортирует их в памяти.
Здесь оценка производительности 1С переходит в анализ:
- Наличие индексов по ключевым полям (документ.Дата, Регистр. Период);
- Корректность отборов в отчетах (нет ли отключения иерархии);
- Эффективность запросов (в коде 1С или на языке запросов).
Для этого используется технологический журнал, замеры времени выполнения и легендарный тест Gilev (набор обработок для диагностики).
Вот базовый набор, который должен быть у любого инженера:
- Консоль кластера 1С (оснастка администрирования серверов 1С). Показывает загрузку процессов rphost, сеансы, блокировки.
- Технологический журнал 1С — записывает все события: долгие вызовы, ошибки, исключения. «Черный ящик» системы.
- Обработка «Измерение производительности» (есть в типовых конфигурациях). Замеряет скорость выполнения операций.
- Тест Gilev — пакет для стресс-тестирования сервера 1С. Показывает, как система ведет себя под нагрузкой.
- Метод APDEX — рассчитывает интегральный индекс удовлетворенности пользователей. Если APDEX ниже 0,7 — пользователи страдают.
Если у вас нет инструментов или времени — закажите оценку производительности 1С у специалистов. Мы используем и технологический журнал, и тесты, и профайлинг запросов.
Вот краткий перечень того, что мы находим в 80% проектов:
- Неэффективные запросы — в отборах не используются индексы; запрос делает «сканирование» всей таблицы.
- Блокировки — один документ (или регламентное задание) блокирует другие, и они ждут в очереди.
- Неоптимизированные регистры — при оборотах по регистру накопления не хватает измерений или ресурсов.
- Статистика СУБД устарела — SQL строит неверный план запроса (лечит обновлением статистики).
- Утечка памяти — rphost со временем «раздувается» до 10−20 ГБ и падает (требует настройки параметров сервера).
После проведения качественной оценки производительности 1С мы выдаем отчет с конкретными точками роста и сметой работ. Никаких «давайте купим новый сервер, потому что старый слабый».
После того как вы нашли узкие места, нужно их устранить.
План по приоритету:
- Исправить критические ошибки в запросах и блокировки — это дает +50−80% прироста.
- Настроить сервер 1С и СУБД — параметры памяти, количество рабочих процессов, регламентные задания.
- Обновить платформу 1С (связка с предыдущей статьей) — новые версии часто быстрее.
- Провести апгрейд железа (если это действительно необходимо). Например, заменить HDD на SSD или добавить RAM.
- Внедрить мониторинг — чтобы отслеживать проблемы до того, как они скажутся на пользователях.
Важно: оценка производительности 1С — это не разовая акция. Проводите её каждый квартал или при сильных изменениях (рост базы, добавление новых пользователей, переход на новую конфигурацию).
Заключение: инвестиция в комфорт и деньги
- Систематическая оценка производительности 1С позволяет:
- Сэкономить на апгрейде «железа»;
- Повысить скорость работы бухгалтеров, менеджеров, кладовщиков;
- Снизить количество ошибок из-за ожидания и прерываний работы;
- Прогнозировать рост нагрузки.
Не надейтесь на «авось» и не мучайте пользователей. Лучше один раз провести профессиональную оценку производительности 1С и устранить «тормоза» на корню.
Если вам нужна помощь — обращайтесь. Мы проведем полный аудит вашей системы и дадим четкие рекомендации.