Как я могу интерпретировать план тестирования, в котором я установил период разгона больше нуля

Это первый раз, когда мне пришлось выполнять тесты, и я немного не понимаю, как интерпретировать результаты, полученные при установке параметра «Ramp-up Period» больше нуля.

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

Теперь эта проблема возникает, когда мне приходится проводить некоторые тесты с использованием «периода нарастания» больше нуля, поскольку я не уверен, к каким выводам могу прийти, или, скорее, я не знаю, верны ли они.

На основании того, что говорится в документации:

Начните с Ramp-up = количество потоков и при необходимости отрегулируйте вверх или вниз.

Это примерно то, что я написал:

1) Чтобы начать наш тест, мы устанавливаем, что каждый поток запускается через 1 (15/15) секунду после того, как был запущен предыдущий поток. Для этого мы устанавливаем одно и то же значение для «Количество потоков» и «Период нарастания».

введите описание изображения здесь

введите описание изображения здесь

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

2) Период разгона = 13

3) Период разгона = 10

4) Период разгона = 7

5) Период разгона = 6

Пока все запросы были выполнены успешно, но с «периодом наращивания», равным 6, только три запроса получили ответ.

введите описание изображения здесь

С этим результатом мы можем сделать вывод, что минимальное время, которое должно пройти между каждым вызовом веб-службы, должно быть больше или равно 0,46 секунды.

Это значение рассчитывается путем деления значения «Количество потоков» и «Наращивание» (7/15).

Что вы думаете о моем заключении? Это правильно? Что еще можно сделать с помощью jmeter, как я показал.

Как всегда, мы будем благодарны за ваши комментарии и предложения.

Спасибо


person eddy    schedule 31.08.2014    source источник


Ответы (1)


Наращивание - это не что иное, как скорость прибытия виртуальных пользователей. JMeter запускается с 1 потока и добавляет больше потоков в соответствии с указанным увеличением. 15 потоков и 15 секунд нарастания означают, что каждые 1 секунду добавляется 1 поток. В случае 7-секундного разгона и 15 потоков каждую секунду добавляются 2 потока. Когда потоку не нужно работать, он закрывается, поэтому убедитесь, что у вас достаточно циклов в родительской группе потоков или контроллере циклов.

Есть как минимум 3 варианта определения сценария нагрузки:

  1. Ultimate Thread Group (бесплатный сторонний плагин) - обеспечивает удобный способ настройки разгона, замедление и удержание времени загрузки.
  2. Таймер постоянной пропускной способности - дает возможность устанавливать нагрузку в «запросах в минуту»
  3. Синхронизирующий таймер - обеспечивает способ приостановки запросов до тех пор, пока не будет достигнут указанный номер потока, и запуск они отключаются одновременно, создавая одновременные одновременные запросы.

Также:

  • Пожалуйста, не используйте графический интерфейс JMeter для чего-либо, кроме разработки и отладки тестов.
  • Избегайте просмотра результатов в прослушивателе таблиц
  • То же самое для прослушивателя дерева результатов просмотра.
  • Следуйте другим советам из руководства JMeter Performance and Tuning Tips.
person Dmitri T    schedule 01.09.2014
comment
Спасибо, Дмитрий Т, но скажите, как вы думаете, мои выводы в порядке? - person eddy; 01.09.2014
comment
Я не думаю, что это хороший способ определить максимальную скорость загрузки сервера, поскольку в зависимости от фактического количества одновременных активных потоков поведение может варьироваться. Я бы предпочел использовать хорошо известную нагрузку, такую ​​как 10 запросов в секунду, 20 запросов в секунду и т. Д., И упоминать, когда наблюдаются ошибки. С этого момента вы можете профилировать приложение, добавлять телеметрию, дополнительное ведение журнала, отслеживать состояние сервера и т. Д., Чтобы разобраться в причинах ошибок. - person Dmitri T; 01.09.2014
comment
Чтобы иметь определенное количество запросов в секунду, мне нужно будет указать одно и то же значение как для количества потоков, так и для периода наращивания, верно? - person eddy; 02.09.2014
comment
Чтобы иметь определенное количество запросов в секунду, вам необходимо использовать таймер постоянной пропускной способности. - person Dmitri T; 02.09.2014