Администрирование · 9 мин
Накопленные вызовы в 1С: что это такое и как их использовать
Что означают накопленные вызовы в консоли кластера 1С, где смотреть счётчики сеансов и соединений, как использовать их для поиска проблем производительности.
При работе с клиент-серверной 1С администраторы часто сталкиваются с колонками «Накопленные вызовы», «Вызовов СУБД» и «Длительность вызовов» в консоли кластера. Эти показатели — один из главных инструментов первичной диагностики производительности: они показывают, сколько обращений к СУБД и серверу 1С сделал конкретный сеанс или рабочий процесс и сколько времени на это ушло.
Накопленные вызовы — это суммарные счётчики, которые накапливаются с момента старта сеанса, соединения или рабочего процесса. Они не показывают текущую нагрузку в моменте, а отражают всю «историю» активности объекта. Именно поэтому по ним удобно находить пользователей и фоновые задания, которые создают аномальную нагрузку на базу.
Разобраться в этих счётчиках важно до того, как запускать тяжёлые инструменты вроде технологического журнала: в большинстве случаев именно накопленные показатели подсказывают, куда смотреть дальше.
Что именно означает термин «накопленные вызовы»
Накопленные (кумулятивные) вызовы — это счётчики, которые растут в течение всего времени жизни объекта: сеанса, соединения с кластером или рабочего процесса. Каждый раз, когда сеанс обращается к СУБД или вызывает сервер 1С, соответствующий счётчик увеличивается на единицу, а длительность операции прибавляется к суммарному времени.
Ключевое отличие от мгновенных показателей: если «текущая длительность вызова» показывает, что происходит прямо сейчас, то накопленные значения отражают всю деятельность объекта с момента его создания. Сеанс, открытый два часа назад, мог накопить миллионы вызовов СУБД — и это прямой признак того, что именно он нагружает базу, даже если в текущую секунду он «молчит».
Где смотреть накопленные вызовы в консоли кластера
Основное место просмотра — консоль управления кластером серверов 1С (оснастка «Администрирование серверов 1С Предприятия»). Счётчики доступны на трёх уровнях, и каждый даёт свой срез картины.
Сеансы
Ветка «Кластер → Информационная база → Сеансы». Здесь для каждого пользовательского сеанса видны колонки: «Вызовов СУБД», «Прочитано», «Записано», «Длительность вызовов СУБД», «Длительность вызовов сервера». Сортировка по любой из этих колонок мгновенно показывает самых «прожорливых» пользователей.
Соединения
Ветка «Соединения» показывает физические подключения к кластеру. Полезна, когда нагрузку создают не пользователи, а внешние интеграции: обмены через COM, веб-сервисы, http-сервисы. У таких подключений сеанс может быть один, а соединений — десятки.
Рабочие процессы
Ветка «Рабочие процессы» показывает суммарную нагрузку по каждому rphost: сколько вызовов он обслужил, сколько данных прочитал и записал. Это помогает оценить балансировку нагрузки между процессами кластера.
- 1Откройте консоль кластера серверов 1С и подключитесь к нужному кластеру
- 2Разверните ветку «Информационные базы» и выберите базу
- 3Перейдите в «Сеансы» и отсортируйте список по колонке «Вызовов СУБД» или «Длительность вызовов СУБД»
- 4Сравните лидеров по накопленным значениям с типичным уровнем остальных сеансов
- 5При необходимости проверьте ветки «Соединения» и «Рабочие процессы» для полной картины
Какие счётчики важны и как их читать
Колонок в консоли много, но для диагностики значимы несколько ключевых. Понимание каждой из них позволяет быстро локализовать источник проблемы.
- Вызовов СУБД (накопленно) — сколько раз сеанс обращался к базе данных. Очень большое число при коротком времени жизни сеанса указывает на «чаттинг» — код, который дёргает СУБД в цикле вместо одного запроса.
- Длительность вызовов СУБД (накопленно) — суммарное время ожидания ответов от СУБД. Если оно составляет бо́льшую часть времени жизни сеанса, проблема в запросах или в самой СУБД.
- Прочитано / Записано — объёмы данных, прошедшие через сеанс. Аномально большой объём чтения часто означает выборку лишних данных или сканирование таблиц.
- Длительность вызовов сервера — суммарное время вызовов сервера 1С от клиента. Помогает отличить нагрузку на СУБД от нагрузки на сам сервер приложений.
- Текущая длительность вызова — не накопленный, а мгновенный показатель: если он растёт и не сбрасывается, вызов «завис» прямо сейчас.
Интерпретировать накопленные значения нужно всегда с учётом времени жизни сеанса. Сеанс длительностью в рабочий день с большими счётчиками — это норма для активного пользователя. А вот фоновое задание, которое за пять минут накопило столько же, сколько пользователь за день, — явный кандидат на разбор.
Ищите обращения к базе в цикле в коде или отчёт с построчной обработкой
Проверяйте планы запросов, индексы и блокировки на стороне СУБД
Проверяйте выборки без отборов и сканирование больших таблиц
Проверьте регламентные и фоновые задания, привязанные к этому сеансу
Практические сценарии диагностики
Поиск пользователя, который «тормозит базу»
Классическая жалоба: «всё зависает». Первый шаг — открыть сеансы и отсортировать по накопленной длительности вызовов СУБД. Если один сеанс резко выделяется, смотрите, что он выполняет (колонка «Вызов» / текущая операция), и при необходимости включайте технологический журнал с фильтром по этому сеансу.
Анализ фоновых заданий
Регламентные задания часто работают ночью и незаметны для пользователей, но именно они могут накопить огромные счётчики. Отфильтруйте сеансы по типу «Фоновое задание» и сравните их накопленные показатели. Задание с аномальными значениями — кандидат на оптимизацию кода или расписания.
Оценка интеграционной нагрузки
Обмены через веб-сервисы и COM-соединения создают отдельные соединения. Если в ветке «Соединения» видно много подключений с быстро растущими счётчиками, проверьте, не зациклилась ли внешняя система, отправляя запросы пачками.
Как проверить результат
Значения у активных сеансов одного порядка, без резких выбросов
Один-два сеанса превышают остальные в разы или на порядки
Средняя длительность вызова невелика
Мало вызовов, но огромная суммарная длительность — тяжёлые запросы
Темп роста накопленных значений заметно снизился
Темп роста не изменился — причина найдена неверно
Ограничения и типичные ошибки при работе со счётчиками
Накопленные вызовы — инструмент первичной диагностики, а не полная картина. Они не показывают, какие именно запросы выполнялись, не фиксируют блокировки напрямую и сбрасываются при завершении сеанса. Для глубокого анализа их дополняют технологическим журналом, средствами СУБД и замерами производительности в конфигураторе.
Ещё одно ограничение: счётчики в консоли обновляются с задержкой и при большом числе сеансов сама консоль может подтормаживать. На нагруженных системах удобнее собирать статистику программно — через RAC или счётчики производительности.
Чем дополнить анализ: альтернативные инструменты
Сравнение вариантов
Быстрый первичный обзор без настройки; не показывает тексты запросов и историю
Детальная запись событий DBMSSQL и запросов; требует настройки и создаёт нагрузку на диск
Точная картина на стороне базы; требует прав и навыков администрирования СУБД
Показывает «горячие» строки кода; применим только к воспроизводимым сценариям
Оптимальная схема работы: сначала накопленные вызовы в консоли кластера для локализации проблемного сеанса, затем технологический журнал с фильтром по этому сеансу для получения конкретных запросов, и уже после — анализ планов запросов на стороне СУБД.
Что важно запомнить
Накопленные вызовы — суммарные счётчики сеанса, соединения или процесса с момента его старта. Смотрите их в консоли кластера, сравнивайте с учётом времени жизни объекта и используйте как первый шаг диагностики перед технологическим журналом.
Частые вопросы
Сбрасываются ли накопленные вызовы?
Да. Счётчики живут вместе с объектом: при завершении сеанса или соединения его накопленные значения обнуляются. Для рабочего процесса сброс происходит при перезапуске rphost. Долгосрочную статистику нужно собирать отдельно, например через RAC или внешние системы мониторинга.
Какое значение накопленных вызовов считать нормальным?
Универсальной нормы нет: она зависит от конфигурации, интенсивности работы и длительности сеанса. Практический подход — сравнивать сеансы между собой и искать выбросы: сеанс, значительно превышающий типичный уровень коллег за то же время, и есть кандидат на анализ.
Чем накопленные вызовы отличаются от текущей длительности вызова?
Накопленные показатели — сумма за всё время жизни объекта, а текущая длительность вызова — время операции, которая выполняется прямо сейчас. Первое показывает историю нагрузки, второе — зависший или долгий вызов в момент наблюдения.
Видны ли накопленные вызовы в файловой версии 1С?
Нет. Эти счётчики — особенность клиент-серверной архитектуры и доступны только в консоли кластера серверов. В файловой базе для диагностики используют замеры производительности и технологический журнал.
Можно ли получить накопленные вызовы программно, без консоли?
Да. Утилита командной строки RAC позволяет выгружать списки сеансов и соединений с их показателями, что удобно для регулярного сбора статистики и интеграции с системами мониторинга.