Многопоточное тестирование производительности по методике APDEX (управляемые формы)

01.09.21

База данных - HighLoad оптимизация

Каждый у кого нет сервера, мечтает его купить, а те, у кого сервер есть, мечтают, чтобы он был быстрее. Но деньги на сервер выделяет руководство...

Скачать файлы

Наименование Файл Версия Размер
Многопоточное тестирование производительности по методике APDEX (управляемые формы):
.epf 947,16Kb
28
.epf 947,16Kb 28 Скачать
Многопоточное тестирование производительности по методике APDEX (управляемые формы) 1С:Документооборот:
.epf 938,72Kb
0
.epf 938,72Kb Скачать

Эпиграф: 
Два мужчины в автобусе:
- Простите... если Вы позволите, я... с вашего позволения,
воспользуюсь...
- Повольте вам этого не позволить!
- Но позвольте!?
- Простите, но это непозволительно!!

© анекдоты про петербуржцев

Постановка задачи:

Прошлая статья Измерь его правильно! Краткое описание общепринятого метода оценки производительности DB серверов вызвала волну возмущения тру 1Сников.
Что как так можно мерять сервер 1С утилитой не на 1С написанной. И пусть весь мир подождет ей пользуется, это нам побоку.
С другой стороны, все приходящие на ум утилиты на 1С замеряют скорость в некоторых условных "попугаях".
Есть суперская конфигурация уважаемого Fragstera Многопоточное тестирование производительности сервера 1С - СУБД, но рассказать вышеупомянутому руководству, что "Эмпирическим путем получено число в 400-500 попугаев на поток (не учитывая временные таблицы), при котором работа терпима" это 100% вероятность уйти без финансирования.
Есть конфигурация тест Гилева, измеряющая на мой взгляд сферического коня в вакууме, но она четко продумана маркетологически. 
Можно стартануть ее на аплбуке шефа и потом, пустив скупую мужскую слезу показать результаты с сервера. Это работает.

Но если по честному, всех интересует с какой скоростью работают конкретные пользователи в конкретной конфигурации и в основном в рабочее время.
Это с достаточной долей достоверности показывает APDEX
встроенный во все актуальные типовые конфигурации.
APDEX не стыдно показать ни техническому специалисту, но совершенно далекому от всего вот этого главному бухгалтеру - он увидит в нем знакомые названия документов и придет к вам вподмогу, что да-да для ПТУ пять секунд это непозволительная роскошь.

Поэтому на другой стороне мы имеем КИП с его нагрузочным тестированием. Это стоит своих денег, но недешево. В некоторых случаях совсем недешево.

Решение:

Примерно по середине между этими тулзами и лежит моя обработка.
Она опирается на APDEX и кроме того она, в отличие от того же КИП не требует встраивания в конфигурацию, а в отличие от стандартного нагрузочного теста не только проводит документы, но и открывает окна справочников и документов.

К тому же она модульная и вы можете составить обработку тестирования и профиль замеров под свою специфику работы.
Для этого достаточно понимания языка запросов, чтобы создать свой вариант выборки объектов.

Порядок работы:

Внимание! Крайне нежелательно запускать в рабочей базе, не убрав из модуля тестирования блок копирования документов.

Агенты тестирования запускаются по Automation сервер, поэтому - windows, поменяете запуск на командную строку - можно запустить в linux. 

Общий принцип работы:
Обработка опирается на подсистему БСП Оценка производительности.
При создании она набирает массивы справочников и документов и случайным порядком открывает их окна, документы проводит или копирует.
Таким образом набирается статистика для APDEX примерно похожая на реальную работу.
Для оценки быстродействия должен быть создан профиль замера.

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

  1. Создан архив информационной базы (не обязательно, если это демо или тестовая конфигурация)
  2. У запускающего пользователя должна быть убрана защита от опасных действий
  3. Создано нужное количество виртуальных пользователей
  4. Создан профиль ключевых операций  БСП Оценка производительности (единственное отличие от типового - время открытия приложения увеличено)
  5. Очищен на текущий день как минимум регистр замеров времени
  6. Отключен контроль отрицательных остатков (если вы не убрали блок копирования документов)
  7. В ИБ подключена внешняя обработка агента тестирования

Все эти действия проходятся пошагово по кнопкам ( защита от опасных действий запускающего пользователя должна быть убрана раньше или база перезапущена)

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

По нажатию кнопки "Запустить тестирование" с  таймаутом запуска будут открыты базы 1С и в них запустится обработка агента тестирования.

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

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

Время и многие вещи набиты хардкодом, в свое оправдание хочу заметить, что и профили ключевых операций у 1С набиты аналогично и не всегда совпадают с названием метаданных документа (это потому что разработчики подсистем редко встречаются друг с другом).
И например Документ: РеализацияТоваровУслуг, а название ключевой операции ПроведениеРеализацияТоваровИУслуг.
 

Требования к запуску обработки:

Обработка предназначена для использования с актуальными типовыми конфигурациями:

для России:

  1. Бухгалтерия предприятия, редакция 3.0 (проверена на редакциях 3.0.66.70)

      Легко доработается под Управление торговлей 11 и актуальные типовые.

Также возможна адаптация отчета под любую имеющуюся у пользователя типовую или нетиповую конфигурацию. 

Установка и использование обработки:

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

 

         Поддержка отчета, лицензирование:

  1. Обработка не имеет ограничений по периоду действия, количеству организаций и информационных баз.
  2. При возникновении вопросов по работе с отчетом, их можно обсудить в комментариях к публикации, личных сообщениях либо по e-mail, указанному в письме с отчетом.

   

Продолжает серию обработок:


Использовалась в статьях:

   

Не верю, что мне приходится писать для пользователей этого сайта, но как оказалось нужно.

Если вы не представляете: что такое 1С Предприятие,  файл и зачем вам нужна эта кухня.

Все файлы из интернет считаете зараженными вирусом.

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

А платить вы за это не будете так как программист с десятилетним стажем.

Закройте эту страницу не продолжая чтения дальше.

Для адекватных людей:

Если оно есть у вас или предложения по улучшению - пишите.

См. также

Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Анализ простого плана запроса. Оптимизация нагрузки на ЦП сервера СУБД используя типовые индексы.

13.03.2024    2953    spyke    26    

42

Быстродействие типовой 1С

HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Оказывается, в типовых конфигурациях 1С есть, что улучшить!

13.03.2024    5090    vasilev2015    19    

37

Анализируем SQL сервер глазами 1С-ника

HighLoad оптимизация Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для простого и удобного анализа настроек, нагрузки и проблем с SQL сервером с упором на использование оного для 1С. Анализ текущих зааросов на sql, ожиданий, конвертация запроса в 1с и рекомендации где может тормозить

1 стартмани

15.02.2024    7619    158    ZAOSTG    66    

96

Удаление строк из таблицы значений различными способами с замером производительности

HighLoad оптимизация Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Встал вопрос: как быстро удалить строки из ТЗ? Рассмотрел пять вариантов реализации этой задачи. Сравнил их друг с другом на разных объёмах данных с разным процентом удаляемых строк. Также сравнил с выгрузкой с отбором по структуре.

09.01.2024    5950    doom2good    48    

63

Опыт оптимизации 1С на PostgreSQL

HighLoad оптимизация Бесплатно (free)

При переводе типовой конфигурации 1C ERP/УТ/КА на PostgreSQL придется вложить ресурсы в доработку и оптимизацию запросов. Расскажем, на что обратить внимание при потерях производительности и какие инструменты/подходы помогут расследовать проблемы после перехода.

20.11.2023    8835    ivanov660    6    

76

ТОП проблем/задач у владельцев КОРП лицензий 1С на основе опыта РКЛ

HighLoad оптимизация Бесплатно (free)

Казалось бы, КОРП-системы должны быть устойчивы, быстры и надёжны. Но, работая в рамках РКЛ, мы видим немного другую картину. Об основных болевых точках КОРП-систем и подходах к их решению пойдет речь в статье.

15.11.2023    5092    a.doroshkevich    20    

72

Начните уже использовать хранилище запросов

HighLoad оптимизация Запросы

Очень немногие из тех, кто занимается поддержкой MS SQL, работают с хранилищем запросов. А ведь хранилище запросов – это очень удобный, мощный и, главное, бесплатный инструмент, позволяющий быстро найти и локализовать проблему производительности и потребления ресурсов запросами. В статье расскажем о том, как использовать хранилище запросов в MS SQL и какие плюсы и минусы у него есть.

11.10.2023    16153    skovpin_sa    14    

98
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Gilev.Vyacheslav 1910 09.01.19 17:48 Сейчас в теме
чтобы это всё из бреда превратилось в нечто осмысленное Вам (0) стоит отказаться от апдекса в пользу секунд, т.е. перейти на статистику длительности операций, потому что апдекс как раз и есть маркетинг
ProgrammistC; surikateg; +2 Ответить
8. Region_64 36 01.03.19 11:14 Сейчас в теме
(1) Возьмите регистр сведений Замеры времени, и смотрите сколько хотите на колонку время выполнения в секундах. Даже отчет можете свой написать. Другое дело, что для корректного замера производительности в той или иной конфигурации, в которой поддерживается такой замер (если мы говорим про APDEX от 1С), нужно внимательно отнестись к настройке профиля ключевых операций. Что касается текущего теста, то его плюс в том, что он реально пытается имитировать работу пользователей. Не нравиться какие действия делает стандартная обработка - измените алгоритм (о чем автор пишет) с учетом вашей специфики. Но это не синтетический тест, который заполняет таблицы минимальным набором данных и потом циклом прогоняет запросы к этим данным. Это тест, с помощью которого можно создать условия, очень похожие на боевые. А что касается "попугаев", то для сравнения одного кластера серверов с другим, например, неважно какую единицу измерения использовать.
9. capitan 2466 01.03.19 11:18 Сейчас в теме
(8)Спасибо на добром слове)
Все точно так и есть.
И сам APDEX не на пустом месте появился - он как раз пытается не только учитывать секунды, но и психологию - порог терпения пользователей.
Он же изначально применялся для оценки скорости открытия страниц веб-сайта и сколько человек его дождутся
Region_64; +1 Ответить
11. Gilev.Vyacheslav 1910 01.03.19 15:01 Сейчас в теме
(9) вот психологию он как раз и не учитывает, если вы опытней клиента, то с помощью апдекса выставив правильные значений легко "пустите пыль в глаза", скроете например пиковые отклонения за большим количеством средних значений
12. capitan 2466 01.03.19 15:13 Сейчас в теме
(11)Вячеслав, я как раз не внедренец, я с полей.
И мои работы подписанием акта не заканчиваются, если я как вы выразились "пущу пыль в глаза" то меня эти же люди порвут как тузик грелку
Да и у вас наверняка есть какие то гарантии.
16. Gilev.Vyacheslav 1910 02.03.19 01:16 Сейчас в теме
(12) переходите к нам работать
KroVladS; +1 Ответить
10. Gilev.Vyacheslav 1910 01.03.19 14:59 Сейчас в теме
(8) сделать можно всё, автор спрашивает что конкретно надо сделать
а вот вы пишите теоретически - конечно
"внимательно отнестись"
можно, но это субъективно, а не объективный критерий

Это тест, с помощью которого можно создать условия, очень похожие на боевые
ставлю что вы сами не понимаете критерий боевых, например вы сможете дать оценку тому функционалу, который компания планирует написать и внедрить в ближайший месяц текущим тестом? знаете сколько вас таких "умных" ...
ProgrammistC; +1 Ответить
13. Region_64 36 01.03.19 16:55 Сейчас в теме
(10)
ставлю что вы сами не понимаете критерий боевых, например вы сможете дать оценку тому функционалу, который компания планирует написать и внедрить в ближайший месяц текущим тестом? знаете сколько вас таких "умных" ...


Странный у вас подход. Вы дискутируете или переходите на личности?

Позволю заметить (уже опасаюсь очередных ярлыков), что конкретно этот тест рассчитан на типовую конфигурацию. И боевые условия - высоконагруженная работа конкретно в этой конфигурации в моем понимании. А не написание и внедрение нового функционала. А уж если говорить о новом функционале, то очень интересно как может тест, проводящий замеры времени шаблонных операций, помочь дать оценку новому функционалу.
14. capitan 2466 01.03.19 17:17 Сейчас в теме
(13)У Вячеслава такая манера общаться, привыкайте )

На самом деле все это легко измеряется даже количественно - простым пересчетом сотрудников и созданных документов за период
Маловероятно, что с вводом новой базы и/или нового оборудования их число изменится.
15. Region_64 36 01.03.19 17:55 Сейчас в теме
(14)
У Вячеслава такая манера общаться, привыкайте )

Это странно.

На самом деле все это легко измеряется даже количественно - простым пересчетом сотрудников и созданных документов за период


Примерно это я имел ввиду, когда говорил "внимательно отнестись" - т.е. собрать профиль их числа самых распространенных операций и расставить приоритеты исходя из имеющейся статистики.
18. Gilev.Vyacheslav 1910 02.03.19 01:23 Сейчас в теме
(15) сами говорите что не обсуждаем личности и тут же обсуждаете "мою манеру общения"
вы прям как пендосы с двойными стандартами: вам можно, мне - нет
20. Region_64 36 02.03.19 08:04 Сейчас в теме
(18)я не обсуждал, а ответил тс

(18)про пендосов - смешно.
17. Gilev.Vyacheslav 1910 02.03.19 01:21 Сейчас в теме
(13) но вы ушли от ответа: что такое "тест боевой базы"? как вы отличаете боевую от не боевой
19. Region_64 36 02.03.19 08:00 Сейчас в теме
(17) В моем случае "боевая база" - это база, в которой работает компания. С типовой конфигурацией и реализованным доп. функционалом.
В общем случае - достаточно первого предложения.
21. Gilev.Vyacheslav 1910 02.03.19 13:39 Сейчас в теме
(19) вы вообще не вкуриваете о чем речь
22. Region_64 36 02.03.19 16:51 Сейчас в теме
2. MuI_I_Ika 1111 27.02.19 16:46 Сейчас в теме
В последних редакциях УТ/ERP название документа ПоступлениеТоваровУслуг изменено на ПриобретениеТоваровУслуг
3. capitan 2466 27.02.19 16:51 Сейчас в теме
(2)А у меня Бухгалтерия предприятия , редакция 3.0 если присмотреться )
Но за загрузку спасибо.
Напишите как там в ERP живется
4. MuI_I_Ika 1111 27.02.19 16:54 Сейчас в теме
(3) Я обычно полагаюсь на колонку справа, где принято описывать конфигурации с которыми работает разработка.
Прикрепленные файлы:
5. capitan 2466 27.02.19 16:56 Сейчас в теме
(4)Камень в огород)
Но при скачивании было написано примерно следующее:
Предупреждение! Файлы за стартмани не являются готовым решением. Это примеры, шаблоны, алгоритмы, "стройматериалы" для вашей учетной системы. Нет гарантии работоспособности. Вы скачиваете и используете на свой страх и риск. Готовые решения с техподдержкой находятся в каталоге софтмагазина.

Ну в принципе достаточно ведь переименовать и все заработало ?
6. MuI_I_Ika 1111 27.02.19 17:06 Сейчас в теме
(5) не ну впринципе разобрался, сейчас запустим
7. capitan 2466 27.02.19 17:15 Сейчас в теме
(6)Напишите в почту. У меня есть доработка чтобы с каждого рабочего места запускать пользователей со своими префиксами
Если нужно конечно
23. Botofill 42 15.03.19 17:20 Сейчас в теме
Здравствуйте, всё хорошо, тест запускается, в каждом окне агента показывает количество циклов, которое он будет исполнять, но вот можно ли это количество настроить до того, как тест запуститься не влезая в конфигуратор?

А ещё у меня после теста результаты не показывает =(
24. capitan 2466 15.03.19 17:42 Сейчас в теме
(23) Не влезая в конфигуратор - нет (
Результаты теста можно встроенной типовой обработкой посмотреть - Просмотр замеров производитеьности.
вы их включить не забыли ?
30. Dizel 29.10.21 12:05 Сейчас в теме
(24)
Просмотр замеров производитеьности.

А не подскажете как обработка называется точно? Регистры то есть, а обработку не нашел. И что будет если APDEX будет ниже порогового значения?
31. Dizel 29.10.21 12:14 Сейчас в теме
(30)Отчет нашел "Оценка производительности".
32. capitan 2466 29.10.21 14:12 Сейчас в теме
(31)Наверняка приятно иметь дело с толковым человеком )
25. titanium2008 42 23.04.21 13:22 Сейчас в теме
Добрый день, а для ЗУП 3.1 есть что то похожее. нужно ключевые операции оттестировать на 100 тыс сотрудниках.
26. capitan 2466 23.04.21 13:26 Сейчас в теме
Добрый день, для ЗУП 3.1.
Будет для докуменооборота.
Для ЗУП 3.1 вы можете сами сделать используя эту обработку как шаблон.
Могу попробовать дать вам скидку при покупке )
27. titanium2008 42 23.04.21 13:37 Сейчас в теме
еще вопрос, у нас сервер 1с на Linux CentOS - будет работать?
Я готов сделать для ЗУП 3.1 , если не придется ее переписывать
Если скидка будет - было бы супер))
28. capitan 2466 23.04.21 13:55 Сейчас в теме
(27)Под Linux не сработает, там строка запуска приложения под windows
29. titanium2008 42 23.04.21 14:02 Сейчас в теме
Оставьте свое сообщение