Показать сообщение отдельно
Старый 06.04.2012, 02:01   #4  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Мне как-то тоже нужно было протестировать производительность системы - обыграть сценарий, когда подключится несско десятков дополнительных пользователей. Была выбрана типовая и достаточно ресурсоемкая последовательность операций:
  • импорт строк заказа из файла
  • резервирование (в моем случае запускается отдельно, а не на создании строк) плюс некоторые специфические действия для повышения процента резервирования;
  • выполнение рядя дополнительных проверок заказа перед передачей в складскую обработку (всякие там навороченные проверки кредитных лимитов, сверка с прайс-листом и т.д.)
  • комплектация заказа (разноска отгрузочной);
  • разноска накладной и фактуры.
Под все это были подготовлены шапки пустых заказов, файлы с данными для создания строк и написан небольшой класс, который все это выполняет. Дальше уже дело техники: можно скриптом дергать этот класс через Business Connector или, скажем, генерить xml-файл для SysAutoRun, дающий аналогичный эффект при использовании виндового клиента Аксапты. Ну и запустить одновременно ндцать десятков сессий, выполняющих все это в цикле. В моем, опять же, случае одна итерация занимала ощутимое время, так что хронометраж велся по обычным часам - был лишь настроен сбор разного рода счетчиков производительности, чтобы потом можно было детально поразбираться, где именно было узкое место.
Пожалуй, чем точнее удастся воспроизвести свои самые типовые (ну и при этом достаточно тяжелые) операции, тем точнее получится оценка падения производительности из-за виртуализации. Если же увлечься синтетическими оторванными от жизни тестами, можно получить весьма искаженные результаты.
За это сообщение автора поблагодарили: propeller (1).