1с замер производительности как использовать

1С:Предприятие 8 позволяет отлаживать и измерять производительность для кода на встроенном языке, исполняемом как на клиенте, так и на сервере.

Объединение результатов замера производительности для клиента и сервера

Особенностью работы замера производительности для клиент-серверной информационной базы в 1С:Предприятии 8 является то, что результаты замера производительности объединяются в один файл. Они включают в себя данные о ходе исполнения кода на встроенном языке как на клиенте, так и на сервере. Для получения такого замера достаточно запустить сервер 1С:Предприятия 8 в отладочном режиме (с помощью ключа командной строки /debug ) и в Конфигураторе в нужный момент просто включить режим замера производительности.

Отображение серверных вызовов.

Режим замера производительности 1С:Предприятия 8 показывает серверные вызовы:
1) вызовы сервера методами объектов встроенного языка, вызовы процедур и функций, исполнение которых происходит на сервере, отображаются в замере производительности в колонке «Обр. сервером» («Обработка сервером») с помощью значка ;
2) вызовы клиентских процедур и функций, в которых тем или иным способом происходил вызов сервера, отображаются в замере производительности в колонке «Обр. сервером» («Обработка сервером») с помощью значка .

На приведенном ниже рисунке можно видеть строки кода, которые приводили к серверным вызовам: для этих строк в колонке «Обр. сервером» («Обработка сервером») указан соответствующий тип серверного вызова:

По колонке «Обр. сервером» («Обработка сервером») в замере производительности возможна сортировка: для этого достаточно щелкнуть мышью по заголовку колонки. При этом все строки кода, исполнение которых приводило к серверным вызовам, будут сгруппированы:

Отображение места исполнения кода: на клиенте или на сервере.

Режим замера производительности 1С:Предприятия 8 отображает, где исполнялся код на встроенном языке в клиент-серверной информационной базе: на клиенте или на сервере:
1) строки кода на встроенном языке, исполнение которых происходило на клиенте, отображаются в замере производительности с помощью значка в колонке «Клиент»;
2) строки кода на встроенном языке, исполнение которых происходило на сервере, отображаются в замере производительности с помощью значка в колонке «Сервер».

На приведенном ниже рисунке выделены колонки, в которых значками отображаются строки, исполнение которых происходило на клиенте и на сервере:

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

Фильтрация результатов замера

В результатах замера производительности в 1С:Предприятии 8 существует возможность фильтрации информации результатов замера. Такая фильтрация реализована в виде двух флажков «Клиент» и «Сервер» в нижней правой части окна результатов замера. По умолчанию, включены оба флажка: это говорит о том, что в результатах замера присуитствует информация о ходе исполнения кода на встроенном языке как на клиенте, так и на сервере. Если оставить включенным только один флажок, то в результатах замера будет показываться только информация о ходе исполнения приложения только на клиенте или сервере соответственно.

Оптимизация приложения

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

Выполнить замер производительности

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

Проанализировать результаты замера производительности

Второй шаг — проанализировать результаты замера производительности.

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

Проанализировать серверные вызовы: вызовы процедур и функций общих модулей на сервере, вызовы сервера при обращении к методам и свойствам объектов языка (обращение к базе данных, оперативная отметка времени и т.п.).

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

  • обращения к серверу в цикле, запросы в цикле;
  • обращения к свойствам объекта по ссылке;
  • и другие.

Оптимизировать прикладной код

Последний шаг — оптимизация прикладного кода. На основе анализа результатов замера производительности и выявленных узких мест произвести оптимизацию прикладного кода.

Замер производительности — встроенный функционал платформы 1С 8 для оценки производительности программного кода в режиме отладки 1С.

С помощью этого механизма возможно оценить производительность в разрезе строк программного кода. Рассмотрим использование этого механизма подробнее на конкретном примере.

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

Запускаем 1С 8.2 или 8.3 в режиме отладки, устанавливаем точку останова, запускаем режим замера из меню (Отладка — Замер производительности).

После этого необходимо активировать выполнение данной строчки программного кода. Что мы получаем:

Получите 267 видеоуроков по 1С бесплатно:

Напротив строк программного кода система показывает, сколько раз была выполнена эта строчка кода. Правее в процентах указан процент выполнения по времени от общего времени выполнения. В режиме управляемого приложения будет указано, где выполняется программный код — на клиенте или сервере.

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

Видео, как запустить замер в отладке 1С:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Замер производительности — встроенный функционал платформы 1С, который позволяет оценить производительность программного кода.

Для выполнения замера необходимо:

Зайти в программу в режиме «Конфигуратор»;

Запустить режим отладки (меню «Отладка – Начать отладку»):

В результате откроется программа в пользовательском режиме.

Открыть квитанцию (или другой объект, который надо проверить):

В конфигураторе включить замер производительности (меню «Отладка – Замер производительности»):

После этого пункт меню «Замер производительности» должен принять вид:

В пользовательском режиме сформировать квитанцию (или выполнить другое действие, которое надо проверить);

В конфигураторе отключить замер производительности (меню «Отладка – Замер производительности»);

Откроется результат замера:

Его нужно сохранить через меню «Файл – Сохранить как» в формате *.pff. Этот файл можно прислать нам для анализа.

Оцените статью
SoftLast
Добавить комментарий