2016-12-22 8 views
3

Мне нужно разделить нагрузку на мое приложение с некоторыми процентами, т.е. модуль входа - 60%, учетные записи - 10%, другие модули - 30%. После нескольких исследований я нашел вариант под Контроллер пропускной способности раздел в jmeter, с помощью которого я могу контролировать эти проценты. Я нахожу один флажок с именем «на пользователя». Теперь я не получаю этот флажок.Jmeter - Каков функционал флажка «На пользователя» в разделе «Контроллер пропускной способности»?

В соответствии с блоком блаземера здесь я попробовал один сценарий, как показано ниже, с помощью «На пользователя» checkbox проверено.

  • В раскрывающемся меню выберите «Total Execution».
  • Выраженные Пропускная способность, как 40.
  • Нить, используемой - 10, кол-Loop 1

Теперь, в соответствии с блог конкретные операции должны выполняться в течение 400 раз. но для этой транзакции было выполнено нулевое выполнение.

Я пробовал использовать другой сценарий с пометкой «Для пользователя». проверено.

  • В раскрывающемся меню выберите «Total Execution».
  • Выраженные Пропускная способность в 60.
  • Нити, используемой - 10, кол-Loop 1

Теперь, в соответствии с блог конкретные операции должны выполняться в течение 600 раз. но он выполнен 10 раз.

Могут ли какие-либо эксперты поделиться тем, что я делаю неправильно здесь? Или нужна определенная ясность, как этот флажок работает.

+0

Включите ли вы пробоотборники, которые вы хотите отправить внутри контроллера пропускной способности? Этот элемент управляет поведением его дочерних элементов. Возможно, вы можете добавить экран со своим сценарием Jmeter, чтобы лучше понять, чего вы пытаетесь достичь. – Michal

+0

Да, внутри него есть один пробоотборник. его только один, потому что перед его внедрением я хотел это понять. – Keshav

ответ

3

Чтобы понять Throughput Controller (TC), просто добавьте один TC и один пробоотборник (внутри TC) и Aggregate Report в комбинации. затем, играйте со всеми параметрами в Throughput Controller.

Из официальной документации:

Всего казни: заставляет контроллер, чтобы остановить выполнение после того, как определенное число казней имели место.

и

Per User: Если флажок установлен, для каждого пользователя будет вызывать контроллер для расчета , должен ли он выполнять на основе одного пользователя (для каждого потока). Если не установлен, то расчет будет глобальным для всех пользователей. Для примера , если используется общий режим выполнения, и снимите флажок «на пользователя», то число, указанное для пропускной способности, будет общее количество выполненных исполнений . Если проверяется «на пользователя», то общее количество исполнений будет количеством пользователей, умножающих число, указанное для пропускной способности.

Прочитайте оба утверждения внимательно несколько раз.

В обоих сценариях, которые вы указали, у вас есть максимальные исполнения 10. (Количество потоков * Количество циклов). Хотя вы указали, Total Executions, как 40 или 60, во-первых, вы должны предоставить более 60, чтобы просмотреть все эти итерации 40/60. Поэтому всегда указывайте больше итераций (используя количество потоков & Loop Count), чем Total Executions.

You have to consider Percentage Executions instead of Total Executions to match your requirements. Опять же, я предлагаю моделировать один образец и понимать поведение, варьируя процентные соотношения.


Ниже приведены некоторые сценарии и ожидаемое поведение (EB).

Сценарий: 1

Thread Group - 10, Loop Count - 1, пропускная способность - 40 (Всего Исполнения), Per User - Проверено.

EB: Sampler будет работать только 10 раз.

Сценарий: 2

Thread Group - 40, Loop Count - 1, пропускная способность - 40 (Всего Исполнения), Per User - Проверено.

EB: Sampler будет работать только 40 раз.

Сценарий: 3

Thread Group - 40, Loop Count - 1, пропускная способность - 40 (Всего Исполнения), Per User - Неконтролируемый.

EB: Sampler будет работать только 40 раз.

Сценарий: 4

Thread Group - 100, Loop Count - 1, пропускная способность - 40 (Всего Исполнения), Per User - Проверено.

EB: Sampler будет работать только 100 раз. рассчитывается, выполняется ли каждый пользователь 40 раз. Поскольку предел не достигнут, он выполняет все 100 итераций.

Сценарий: 5

Thread Group - 100, Loop Count - 1, пропускная способность - 40 (Всего Исполнения), Per User - Неконтролируемый.

EB: Sampler будет работать только 40 раз. рассчитанных на глобальном уровне. Поскольку пробоотборник достиг 40 раз для всех потоков, он прекращает его выполнение.

Сценарий: 6

Thread Group - 100, Loop Count - 40, пропускная способность - 40 (Всего Исполнения), Per User - Проверено.

EB: Sampler будет работать 400 раз (каждый пользователь -> 40 раз, 100 * 40).рассчитывается, выполняется ли каждый пользователь 40 раз. Здесь, даже каждый пользователь предел достигается также и не более казней после 40.

Сценарий: 7

Thread Group - 100, Loop Count - 1, Пропускная способность - 40 (Всего казням), Per User - Не отмечен.

EB: Sampler будет работать только 40 раз. рассчитанных на глобальном уровне. Поскольку пробоотборник достиг 40 раз для всех потоков, он прекращает его выполнение.