03.02.2023 Альберт Нургалеев 10714
Приемы программной настройки замера производи...

Содержание:

         В типовых конфигурациях 1С Предприятия подсистема замера производительности уже присутствует и имеет большое количество встроенных ключевых операций. Бывает, что не всегда есть та операция, которую нам нужно замерить или мы доработали конфигурацию и нам нужно замерить открытие новых объектов. Возможно у нас своя конфигурация, написанная с нуля, и в ней нет подсистемы замера производительности. В этой статье пойдет речь о том, как настроить замеры производительности 1С в подобных случаях.


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


1.     Внедрение библиотеки стандартных подсистем 1С

 

         Если вы используете типовую конфигурацию 1С Предприятия, то данный шаг можно пропустить.


         Для замера производительности необходим минимальный набор компонентов. Он поставляется в составе библиотеки стандартных подсистем 1С.


         Процесс внедрения БСП описан на сайте ИТС https://its.1c.ru/db/bsp313doc#content:11:1. Для работы подсистемы «Оценка производительности» необходимо внедрить еще три подсистемы: Базовая функциональность, Обновление версии ИБ, Пользователи. Также для определения списка требуемых подсистем можно воспользоваться поставляемой с БСП обработкой ПервоеВнедрениеБСП.epf.


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


         Справочники системы конфигурации 1С: КлючевыеОперации и ПрофилиКлючевыхОпераций (рис.1).



        

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




         Регистры сведений системы конфигурации 1С: ЗамерыВремени, ЗамерыВремениТехнологические (рис. 3).




         Ключевой регистр – Замеры времени 1С. Именно в него попадают данные о замерах в секундах (рис. 4).



        

         Общие модули подсистемы конфигурации 1С оценка производительности (рис. 5).




         После внедрения и настройки БСП можно переходить к определению операций, подлежащих замеру.  


2.     Определение операций для замера системы конфигурации 1С

 

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


         Необходимо взвести константу замер производительности 1С и какое-то время поработать без настроенного профиля ключевых операций (в таком случае замеры времени не будут записываться в регистр, но в справочнике «Ключевые операции» отобразятся все выполненные за этот период операции и их можно будет добавить в «профиль ключевых операций»). Дело в том, что в типовых конфигурациях 1С Предприятия имя ключевой операции формируется динамически в различных модулях. Например, на рис. 6 показан модуль ОбщегоНазначенияУТКлиент. В нем динамически формируется имя операции при записи документа.




         Если ключевых операций не хватает, то придется добавлять свои.


         Для нетиповых конфигураций 1С с интегрированной системой оценки производительности ключевые операции нужно прописывать в программном коде 1С.  


3.     Настройка ключевых операций и замер открытия формы документа 1С Предприятие

 

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


         Вот пример кода по замеру производительности (при желании можно все доработки вынести в отдельное расширение).


         В каком событии начинать и заканчивать замер? «ПриСозданииНаСервере»? Когда фиксировать замер? Тоже «ПриСозданииНаСервере»? А если у нас в событии «ПриОткрытии» есть код? Мы не можем его оставить без замера. Есть еще один момент – начало и конец замера должны быть в одном контексте. Т.е. мы не сможем начать замер «ПриСозданииНаСервере» (серверный контекст) и закончить замер «ПриОткрытии» (клиентский контекст). Как быть?


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




         На форме документа разместим служебный реквизит ВремяНачалаЗамера. В него запишем значение, переданное из модуля менеджера 1С Параметры.ВремяНачалаЗамера (рис.8).



        

         Запись в реквизит произведем в процедуре «ПриСозданииНаСервере» (рис.9).




         В самой форме замер завершим в процедуре «ПриОткрытии». Благодаря этому сможем включить в замер и клиентский код. Это процедура выполняется в клиентском контексте, поэтому из нее придется вызвать вспомогательную процедуру на сервере «ЗавершитьЗамерВремениНаСервере» рис. 10.




         Таким образом мы сможем замерить всю продолжительность открытия формы документа 1С Предприятие.


         С помощью данного метода можно устанавливать замеры в любой точке кода. Можно настроить замер любых требуемых операций и при выявлении медленных участков кода оптимизировать их.


         Настройка параметров замера в пользовательском режиме 1С описывалась в статье «Как замерить производительность системы (APDEX часть 1)»


         Важно помнить то, что мы не измеряем – невозможно контролировать.

                                                                              

   Специалист компании "Кодерлайн"
Альберт Нургалеев

Наши проекты

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Перевод зарплатных баз с версии ЗУП 2.5 на версию ЗУП 3.1.
- Сопровождение в п...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

ООО «Мир Аксиомы»
ООО «Мир Аксиомы»

Отрасль:
Аудиторские и консалтинговые услуги

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

ООО «ЛИГА-ТРАНС»
ООО «ЛИГА-ТРАНС»

Отрасль:
Профессиональные услуги, бытовое обслуживание

Внедренное типовое решение:
«1С:ERP Управление предприятием 2.1».

- Сделано ТЗ по автоматизации учета МСФО: - Разработана карта бюджета доходо...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:

- Совместная работа по внедрению разных решений, в том числе «1С:ERP Управление...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

Автоматизации учета затрат и расчета себестоимости с использованием конфигурации «Koderline: Управление проектами строительства скважин»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
«Koderline: Управление проектами строительства скважин»

Учет и планирование:
- собственную разработку компании «Кодерлайн» – конф...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

Внедрение ПП "1С:Корпоративный инструментальный пакет 8" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Различная отраслевая специфика:
- Переработка давальческого сырья
- Уче...

Внедрение 1С:Управление торговлей в оптово-розничной компании «Много Плитки»
ООО «Много Плитки»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Закупки (снабжение) и управление отношениями с поставщиками:
- Оформление ...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

Внедренное типовое решение:
Платформа 1С:Предприятие 8

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в дан...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:
1С:Управление корпоративными финансами

- Финансово-бухгалтерский блок
- Казначейство ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение