Опыт использования подсистемы "Оценка производительности" в УТ11

04.07.13

Разработка - БСП (Библиотека стандартных подсистем)

Опыт внедрения и использования подсистемы "Оценка производительности" из БСП 2.0 в Управлении торговлей 11 (11.0.8). Отчет по статистике проведенных замеров с отбросом статистических выбросов.

Скачать исходный код

Наименование Файл Версия Размер
Отчет статистика замеров быстродействия
.erf 12,94Kb
23
.erf 12,94Kb 23 Скачать

Подсистема встраивалась в УТ 11.0.8; в данной версии в типовой конфе она отсутствовала.
Не буду описывать как технически осуществляется интеграция, описания можно найти в интернете, например http://programmist1s.ru/ustanovka-podsistemyi-bsp-otsenka-proizvoditelnosti/

Остановлюсь вот на чем: в найденных мною описаниях речь идет о ранних версиях БСП, а её использование было несколько изменено начиная с БСП 2.0.1.

Цитирую: "Изменен тип объекта КлючевыеОперации - теперь это справочник. Необходимо перенести все ключевые операции из перечисления в справочник и в режиме 1С:Предприятия задать приоритет и целевое время для каждой операции. Для замеров времени больше не используется параметр сеанса ТекущийЗамерВремени, вместо него на клиенте используется глобальная переменная модуля управляемого или обычного приложения ОценкаПроизводительностиЗамерВремени."

Соответственно, после объединения подсистем, в модуль управляемого или обычного приложения нужно добавить глобальную переменную ОценкаПроизводительностиЗамерВремени, прописать значения в справочник КлючевыеОперации (я использовал предопределенные значения) и добавить вызовы замеров времени в нужных местах.

Опять же в интернете приведен пример интеграции замера в интерактивное проведение документа (замена стандартной кнопки OK).
Вот мой код кнопки "Провести и закрыть" применительно к БСП 2.0.


&НаКлиенте

Процедура _OK(Команда)

    Если
ОценкаПроизводительностиПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда

       
#Если ТолстыйКлиентОбычноеПриложение Тогда

           
КлючеваяОперация = Справочники.КлючевыеОперации.ПроведениеЗаказаКлиента;

       
#Иначе

           
КлючеваяОперация = ПредопределенноеЗначение("Справочник.КлючевыеОперации.ПроведениеЗаказаКлиента");

       
#КонецЕсли

       
ОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(КлючеваяОперация);

    КонецЕсли;



    Попытка

       
#Если ТолстыйКлиентОбычноеПриложение Тогда

           
ЗаписатьВФорме(РежимЗаписиДокумента.Проведение);

       
#Иначе

           
ПараметрыЗаписи = Новый Структура("РежимЗаписи");

           
ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение;

           
ЭтаФорма.Записать(ПараметрыЗаписи);

       
#КонецЕсли

   
Исключение

    КонецПопытки;

   
ЭтаФорма.Закрыть();



КонецПроцедуры

Далее пример того, чего не находил в интернетах - замер времени открытия динамического списка (от нажатия пользователем на ссылку в интерфейсе). Изменяем код обработчика команды открытия списка Заказы клиентов.


&НаКлиенте

Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)



   
//==========================

    //замер времени открытия списка заказов клиентов

   
Если ОценкаПроизводительностиПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда

       
#Если ТолстыйКлиентОбычноеПриложение Тогда

           
КлючеваяОперация = Справочники.КлючевыеОперации.ОткрытиеСпискаЗаказовКлиентов;

       
#Иначе

           
КлючеваяОперация = ПредопределенноеЗначение("Справочник.КлючевыеОперации.ОткрытиеСпискаЗаказовКлиентов");

       
#КонецЕсли

       
ОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(КлючеваяОперация);

    КонецЕсли;

   
//================



    //стандартный код

   
ОткрытьФорму("Документ.ЗаказКлиента.Форма.ФормаСпискаДокументов",

        ,
// ПараметрыФормы,

       
ПараметрыВыполненияКоманды.Источник,

       
ПараметрыВыполненияКоманды.Уникальность,

       
ПараметрыВыполненияКоманды.Окно

    );



КонецПроцедуры

Ну и поскольку пока цель - накопление статистики, а не анализ его по APDEX (в отсутствие целевых эталонных времен) -  реализован отчет на СКД, который показывает в виде диаграмм количество, максимальное и среднее время выполнения операций в разрезе подразделений (у нас территориально распределенная сеть).

Особенность отчета - для вариантов "среднее время операций", "максимальное время выполнения операций" отбрасываются 10% минимальных и максимльных значений замеров внутри дня и ключевой операции. Это нужно для исключения случайных выпадений. Например пользователь выполняет замеряемую операцию, внутри который имеется интерактивный диалог - а вместо ответа "Да/Нет" пользователь вышел покурить / отвечает на телефонный звонок и т.п. или случился "затык" канала связи и время вместо 8 секунд стало 70 :).

См. также

БСП. Добавляем отчет в меню Отчеты

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3073    John_d    10    

88

Создать на основании - своя кнопка (БСП). Проблема двух подменю Создать на основании

БСП (Библиотека стандартных подсистем) Адаптация типовых решений Платформа 1С v8.3 1С:ERP Управление предприятием 2 Бесплатно (free)

Понадобилось в подменю "Создать на основании" добавить свою команду, которая открывает обработку. В процессе доработок появилась проблема двух подменю "Создать на основании". В статье о том, как решились проблемы.

01.03.2024    1655    dimanich70    8    

14

Заполнение поля адреса в своей обработке [БСП]

Механизмы платформы 1С БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Небольшая шпаргалка по функциям БСП касательно адреса. Так скажем, еще один способ помимо https://infostart.ru/1c/articles/1060970/

12.02.2024    777    FilippovRI    0    

15

Расширяем возможности дополнительных обработок и настраиваем их отладку

БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

07.02.2024    2578    YA_418728146    11    

42

1С:БСП Дополнительные реквизиты и сведения

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Бесплатно (free)

В этой статье расскажем об архитектуре, использовании и особенностях реализации подсистемы «Свойства» из инструментария разработчика «1С:Библиотека стандартных подсистем» (1С: БСП).

19.01.2024    6131    PROSTO-1C    5    

46

Бесплатный митап 9 февраля «Библиотеки и фреймворки на 1С и всё, что с этим связано»

БСП (Библиотека стандартных подсистем) Мероприятия Бесплатно (free)

Митап посвящен вопросам создания, использования и поддержке переиспользуемого кода при разработке решений на платформе 1С:Предприятие 8.

15.01.2024    3882    0    Infostart    0    

21
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. AlX0id 04.07.13 12:53 Сейчас в теме
Эм... А где же сам "опыт" использования-то? Ну там оценки - типа подсистема "г" или не "г", подходит в таких-то случаях, в таких-то не подходит..
EvgeniyOlxovskiy; +1
2. Vlad_M 74 04.07.13 13:00 Сейчас в теме
(1) хм... действительно. Внедрили - собираем статистику. Инструмент нормальный с той точки зрения что пытается именно с точки зрения пользователя замерить. До выполнения отчетов пока не добрались, хотя мысли есть. Внятных скачков быстродействия не заметили, заметили что масштабируемости у нас пока хватает - т.е. при увеличинии работы пользователей и количества операций среднее время фактически не изменяется.
+
3. bendarik 28.11.14 18:26 Сейчас в теме
У меня внутренний конфликт.
С одной стороны я понимаю, что необходимо цепляться, как в вашем случае, за кнопку "ОК", а с другой стороны не могу найти аргументов против того чтобы цепляться за обработчики событий (начать с "ПередЗаписью" и закончить "ПослеЗаписи").
Возможно фитча в том, чтобы полностью возродить пользовательское "клацанье", но где же взять пруф тому что от клацанья до момента вызова первого обработчика че-то происходит? Логично предположить, что происходит в этот промежуток как раз вызов обработчика )), но стоит ли описывать новую команду ради замера вызова обработчика?
Помогите...
+
4. mxs89 12 03.02.16 11:27 Сейчас в теме
как происходит сохранение результатов замера? в РС ЗамерыВремени?
+
5. Vlad_M 74 29.03.16 10:23 Сейчас в теме
(4) mxs89, Да в данном регистре
+
6. free11 12 07.12.16 11:03 Сейчас в теме
Не понял, в какой момент происходит фиксация окончания замера?
mrgraph; emakei; +2
7. RailMen 824 26.03.18 10:52 Сейчас в теме
Владислав, тему описал наинтереснейшую. Лайкую!
Что мешало выложить скриншоты отчета со статистикой? Ну это же статья на инфо ресурсе, надо же больше графических материалов выкладывать.
+
Внимание! Тема сдана в архив