Как заставить каждлго vuser'a передавать параметр с декрементом?
#1
Отправлено 18 апреля 2008 - 10:29
Запускаю N виртуальных юзеров.
В качестве ставки передаю значения из текстового файла с декрементом.
Каждый юзер извлекает последовательно 10 значений из файла и постит их.
При прогоне получаю, что юзеры извлекают одни и те же первые 10 значений из файла.
Как сделать так, чтобы каждый постил свое значение, при чем меньшее чем запостил другой?
Может тут не файл совсем нужен?
#2
Отправлено 18 апреля 2008 - 10:35
Как сделать так, чтобы каждый постил свое значение, при чем меньшее чем запостил другой?
Может тут не файл совсем нужен?
А как человек определяет - какое значение ему отправить в качестве ставки?
Подозреваю, что он считывает текущую ставку со страницы, полученной от сервера.
И на основе текущей ставки делаюет свою - +1 или -1 (в зависимости от типа торгов).
Поэтому решение будет такое:
- Получаем текущую ставку с помощью correlation
- На основе текущей ставки получаем новую (+/- 1)
- Отправляем новую ставку на сервер
#3
Отправлено 18 апреля 2008 - 10:55
А как человек определяет - какое значение ему отправить в качестве ставки?
Подозреваю, что он считывает текущую ставку со страницы, полученной от сервера.
И на основе текущей ставки делаюет свою - +1 или -1 (в зависимости от типа торгов).
Поэтому решение будет такое:В моем проедложенном решении и файл не нужен :)
- Получаем текущую ставку с помощью correlation
- На основе текущей ставки получаем новую (+/- 1)
- Отправляем новую ставку на сервер
Можно уточнить по первому пункту, где и как использовать correlation ?
#4
Отправлено 18 апреля 2008 - 11:15
Можно уточнить по первому пункту, где и как использовать correlation ?
Что такое correlation в LoadRunner? Это процесс получения каких-либо данных (обычно динамически меняющихся) из страницы, возвращаемой сервером.
Например, когда я захожу на сайт погоды - я не знаю заранее, какая температура будет отображена на странице (т.к. это значение динамически меняется). Но я знаю, что значение температуры находится в таком-то месте на странице (например, в N-й строчке таблицы с остальными данными, либо же между текстом "Текущая t = " и " C").
Вот здесь-то и нужна корреляция с помощью функции web_reg_save_param.
С ее помощью можно получить текущее значение температуры (например, "12") и далее делать с ним что угодно (+/- 1, +/- 2, +/- 3, и т.д. - вариантов много :) )
Были у меня попытки объяснить механизм корреляции простыми словами, на примере и в картинках. Посмотри - может пригодится:
- Using Correlation in LoadRunner scripts - visual tutorial
- How to select correct boundaries for web_reg_save_param LoadRunner function?
#5
Отправлено 22 апреля 2008 - 09:13
Действительно корреляция помогла.
Правда возникла другая проблема.
При одновременном запуске нескольких виртуальных пользователей получаются, что виртуальные пользователи конкурируют между собой кто быстрее получит ответ с сервера и подаст ставку. И больше половины из них не успевает за коллегами :)
В принципе это штатная ситуация, но нагрузку хочется проверять на удачно поданных ставках.
Какое здесь возможно решение кроме как заставить пользователей засыпать на несколько секунд?
#6
Отправлено 21 мая 2008 - 07:45
Правда возникла другая проблема.
При одновременном запуске нескольких виртуальных пользователей получаются, что виртуальные пользователи конкурируют между собой кто быстрее получит ответ с сервера и подаст ставку. И больше половины из них не успевает за коллегами :)
В принципе это штатная ситуация, но нагрузку хочется проверять на удачно поданных ставках.
Какое здесь возможно решение кроме как заставить пользователей засыпать на несколько секунд?
Попробуйте почитать о rendezvous point.
#7
Отправлено 22 мая 2008 - 01:44
Смысл? Они и так конкурируют друг с другом, а точки рандеву только обострят эту конкуренцию, выстроив их на стартовой черте и создавая условия для экстремальной нагрузки. Логичнее использовать think time с рандомизированной задержкой.Попробуйте почитать о rendezvous point.Правда возникла другая проблема.
При одновременном запуске нескольких виртуальных пользователей получаются, что виртуальные пользователи конкурируют между собой кто быстрее получит ответ с сервера и подаст ставку. И больше половины из них не успевает за коллегами :)
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных