
Я, как 1С-архитектор, регулярно слышу от менеджеров по продажам одни и те же фразы: «У меня клиент на телефоне, а 1С всё крутит и крутит!» или «Мне нужно срочно выставить счет на пару позиций, но подбор товаров висит 10 минут, так работать невозможно!». Знакомо?
Обычно в таких ситуациях рядовые программисты и системные администраторы разводят руками: код рабочий, проблема в железе, покупайте новый сервер — и будет вам счастье. Воодушевленные ИТ-руководители выбивают бюджеты, сервер покупается (или модернизируется существующий).
Но мечты о кратном ускорении разбиваются о суровую реальность: программный код с точки зрения бизнес-логики может работать «идеально», но с точки зрения архитектуры он абсолютно неоптимален. В итоге становится «чуть быстрее», но кратного роста нет, потому что все соглашаются с мифом: «Ну это же 1С, она в принципе медленная». А через пару месяцев сотни новых строк кода по доработкам от бизнеса снова потихоньку убивают производительность системы.
У меня есть хорошие новости. Систему (например, «1С:Управление торговлей 11») можно ускорить кратно, и часто для этого вообще не нужно покупать новый сервер!
Почему 1С тормозит на самом деле?
Дело не в платформе, а в политике качества кода. Лишь единицы делают грамотное код-ревью, проверяя не только бизнес-логику, но и применение правильных паттернов программирования, чтобы интерактивные действия пользователя не вешали базу.
Программист пишет код. В процессе отладки он подвисает на 2-3 секунды при выполнении сложных расчетов или поиске. Казалось бы, ерунда! Но когда в систему заходят десятки-сотни пользователей на нагруженном сервере, эти секунды превращаются в минуты ожидания и взаимные блокировки (особенно при проведении заказов в транзакции).
Итог: ошибки тайм-аута и попутное торможение вообще всех баз на этом сервере.
Как мы ускоряем систему кратно
Чтобы остановить этот порочный круг, опытный архитектор сначала ставит на паузу разработку нового функционала.
Запускается система мониторинга, отслеживающая время выполнения операций. В своей практике я настраиваю логи технологического журнала на запись в формате JSON, отслеживаю время тяжелых запросов вплоть до микросекунд (параметр `DurationUS`) и анализирую эти данные через потоковые скрипты `jq` и `awk`. Параллельно фиксируется нагрузка на процессор сервера, диски, память и сеть.
Так мы выявляем ТОП 10-20 «узких мест» в системе (подбор товара, проведение, печать).
В большинстве случаев программный код в этих местах переписывается, и проблема уходит, но иногда нужно менять саму логику работы.
Например, менеджер не должен бегать по всему интерфейсу, чтобы посмотреть остатки, лимиты и взаиморасчеты. Ему нужно единое окно. Именно для этого я создал расширение «Светофор Продаж: Умное АРМ менеджера для 1С:УТ 11.5». В нем оптимально подгружаются остатки, выполняется поиск, а заказ заполняется одной кнопкой — без лишних тяжелых запросов.
Как сохранить скорость надолго?
После оптимизации узких мест 1С начинает работать кратно быстрее без оптимизации железа. Но сохранить это — кадровый и политический вопрос.
В одной из крупных компаний, в отделе 5 разработчиков. Я неоднократно предлагал нанять тестировщиков и аналитиков. Ответ руководства всегда один: «Тестировщики могут найти неверно работающий код, но бизнес этого может никогда не заметить. Пусть разработчики сдают работу напрямую бизнес-заказчикам, так проще».
В итоге разработчики придумывают временные «костыли», система снова тормозит, пользователи жалуются, а разбираться с этим прилетает мне. А ведь нет ничего более постоянного, чем временное.
Что делать, если ваша 1С мешает продавать?
Если ваши менеджеры теряют клиентов из-за зависаний базы, а ИТ-отдел просит очередной миллион на сервер — проблему нужно решать на уровне архитектуры.
1. Снимите рутину с интерфейса.
Вы можете разгрузить отдел продаж моим готовым решением. Переходите по ссылке и скачивайте «Светофор Продаж: Умное АРМ менеджера для 1С:УТ 11.5». Оно устанавливается в виде расширения, не снимает базу с поддержки и мгновенно ускоряет работу менеджеров.
2. Закажите аудит архитектуры и оптимизацию.
Если проблема лежит глубже, обмены тормозят систему или вам требуется надежное сопровождение доработанных конфигураций, я готов взять вашу базу на аудит. Пора заставить вашу 1С летать на том железе, которое у вас уже есть.
Вступайте в нашу телеграмм-группу Инфостарт