Эпиграф:
Два мужчины в автобусе:
- Простите... если Вы позволите, я... с вашего позволения,
воспользуюсь...
- Повольте вам этого не позволить!
- Но позвольте!?
- Простите, но это непозволительно!!
© анекдоты про петербуржцев
Постановка задачи:
Прошлая статья Измерь его правильно! Краткое описание общепринятого метода оценки производительности DB серверов вызвала волну возмущения тру 1Сников.
Что как так можно мерять сервер 1С утилитой не на 1С написанной. И пусть весь мир подождет ей пользуется, это нам побоку.
С другой стороны, все приходящие на ум утилиты на 1С замеряют скорость в некоторых условных "попугаях".
Есть суперская конфигурация уважаемого Fragstera Многопоточное тестирование производительности сервера 1С - СУБД, но рассказать вышеупомянутому руководству, что "Эмпирическим путем получено число в 400-500 попугаев на поток (не учитывая временные таблицы), при котором работа терпима" это 100% вероятность уйти без финансирования.
Есть конфигурация тест Гилева, измеряющая на мой взгляд сферического коня в вакууме, но она четко продумана маркетологически.
Можно стартануть ее на аплбуке шефа и потом, пустив скупую мужскую слезу показать результаты с сервера. Это работает.
Но если по честному, всех интересует с какой скоростью работают конкретные пользователи в конкретной конфигурации и в основном в рабочее время.
Это с достаточной долей достоверности показывает APDEX
встроенный во все актуальные типовые конфигурации.
APDEX не стыдно показать ни техническому специалисту, но совершенно далекому от всего вот этого главному бухгалтеру - он увидит в нем знакомые названия документов и придет к вам вподмогу, что да-да для ПТУ пять секунд это непозволительная роскошь.
Поэтому на другой стороне мы имеем КИП с его нагрузочным тестированием. Это стоит своих денег, но недешево. В некоторых случаях совсем недешево.
Решение:
Примерно по середине между этими тулзами и лежит моя обработка.
Она опирается на APDEX и кроме того она, в отличие от того же КИП не требует встраивания в конфигурацию, а в отличие от стандартного нагрузочного теста не только проводит документы, но и открывает окна справочников и документов.
К тому же она модульная и вы можете составить обработку тестирования и профиль замеров под свою специфику работы.
Для этого достаточно понимания языка запросов, чтобы создать свой вариант выборки объектов.
Порядок работы:
Внимание! Крайне нежелательно запускать в рабочей базе, не убрав из модуля тестирования блок копирования документов.
Агенты тестирования запускаются по Automation сервер, поэтому - windows, поменяете запуск на командную строку - можно запустить в linux.
Общий принцип работы:
Обработка опирается на подсистему БСП Оценка производительности.
При создании она набирает массивы справочников и документов и случайным порядком открывает их окна, документы проводит или копирует.
Таким образом набирается статистика для APDEX примерно похожая на реальную работу.
Для оценки быстродействия должен быть создан профиль замера.
Предварительные действия перед запуском:
- Создан архив информационной базы (не обязательно, если это демо или тестовая конфигурация)
- У запускающего пользователя должна быть убрана защита от опасных действий
- Создано нужное количество виртуальных пользователей
- Создан профиль ключевых операций БСП Оценка производительности (единственное отличие от типового - время открытия приложения увеличено)
- Очищен на текущий день как минимум регистр замеров времени
- Отключен контроль отрицательных остатков (если вы не убрали блок копирования документов)
- В ИБ подключена внешняя обработка агента тестирования
Все эти действия проходятся пошагово по кнопкам ( защита от опасных действий запускающего пользователя должна быть убрана раньше или база перезапущена)
После этого задается количество виртуальных пользователей и таймаут запуска, а так же пороговое значение APDEX дальше которого тестирование не будет идти.
По нажатию кнопки "Запустить тестирование" с таймаутом запуска будут открыты базы 1С и в них запустится обработка агента тестирования.
Всю эту логику несложно поменять, по умолчанию выбраны справочники Контрагенты и Номенклатура и документы Поступление на расчетный счет, Списание с расчетного счета, Поступление товаров и услуг, Реализация товаров и услуг.
Обработка тестирования и профиль ключевых операций включены как макеты двоичных данных.
Время и многие вещи набиты хардкодом, в свое оправдание хочу заметить, что и профили ключевых операций у 1С набиты аналогично и не всегда совпадают с названием метаданных документа (это потому что разработчики подсистем редко встречаются друг с другом).
И например Документ: РеализацияТоваровУслуг, а название ключевой операции ПроведениеРеализацияТоваровИУслуг.
Требования к запуску обработки:
Обработка предназначена для использования с актуальными типовыми конфигурациями:
для России:
- Бухгалтерия предприятия, редакция 3.0 (проверена на редакциях 3.0.66.70)
Легко доработается под Управление торговлей 11 и актуальные типовые.
Также возможна адаптация отчета под любую имеющуюся у пользователя типовую или нетиповую конфигурацию.
Установка и использование обработки:
- Обработка выполнена с использованием управляемых форм, соответственно, для конфигураций с обычным интерфейсом требует для работы включения в конфигурацию либо запуска в управляемом интерфейсе.
- Может использоваться платформа 8.3.12.х и старше
Поддержка отчета, лицензирование:
- Обработка не имеет ограничений по периоду действия, количеству организаций и информационных баз.
- При возникновении вопросов по работе с отчетом, их можно обсудить в комментариях к публикации, личных сообщениях либо по e-mail, указанному в письме с отчетом.
Продолжает серию обработок:
- Быстрое тестирование производительности сервера 1С (файловый и клиент-серверный варианты). Управляемые формы
- Тесты производительности - различные варианты хранения (Windows 2012 vs Ubuntu 14.04 vs Fedora 20; MS Sql 2014 vs Postgresql 9.2.4) на примере УТ 11.1
Использовалась в статьях:
- Сервер 1С:Предприятие на Ubuntu 16.04 и PostgreSQL 9.6, для тех, кто хочет узнать его вкус. Рецепт от Капитана
- 1С и Яндекс.Облако Compute Cloud. Вдоль и поперек
Не верю, что мне приходится писать для пользователей этого сайта, но как оказалось нужно.
Если вы не представляете: что такое 1С Предприятие, файл и зачем вам нужна эта кухня.
Все файлы из интернет считаете зараженными вирусом.
Если физиологические, моральные, религиозные или другие причины не позволяют вам заполнять справочники, документы, настраивать отчеты 1С и запускать обработки.
А платить вы за это не будете так как программист с десятилетним стажем.
Закройте эту страницу не продолжая чтения дальше.
Для адекватных людей:
Если оно есть у вас или предложения по улучшению - пишите.