Как определить пропускную способность из сводного отчета

#jmeter

#jmeter

Вопрос:

Я создал простой скрипт в Jmeter. Я использовал контроллер транзакций, чтобы узнать, сколько времени требуется для выполнения определенных транзакций. Как вы можете видеть из изображения, мои запросы API разделены на 3 транзакции, а именно: «Домашняя страница», «Изменить частоту на ежедневную» и «Выбрать бренд». введите описание изображения здесь

На «домашней странице» контроллера транзакций содержится 12 запросов. Общее количество разрешенных запросов — 12. Контроллер транзакций «Изменить частоту на ежедневную» содержит 11 запросов. В контроллере транзакций «Выберите бренд» содержится 14 запросов.

Настройка для всех 3 контроллеров транзакций такая же, как показано ниже. Я использовал только 1 группу потоков. Количество потоков равно 1, а количество циклов также равно 1

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

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

На основе сводного отчета о выполнении у меня есть следующие вопросы, и я буду очень благодарен, если кто-нибудь сможет ответить на них правильно.

  1. Как вы можете видеть из изображения, контроллер транзакций «Домашняя страница» показывает количество выборок как 1. Разве он не должен показывать общее количество выполненных выборок, равное 12?

  2. Пропускная способность для контроллера транзакций «Домашней страницы» составляет 22,8 / мин. Итак, означает ли это, что в транзакции «Домашняя страница» обслуживалось 22,8 запросов в минуту? Как вычисляется 22.8? Это сумма пропускной способности всех 12 запросов в контроллере транзакций «Домашняя страница»?

  3. В строке с именем «Итого» и в столбце «Пропускная способность» общее значение равно 3,7 / сек. Как вычисляется число 3.7? Что это значит? Означает ли это, что для всего теста производительности пропускная способность составляет 3,7 / сек? Как мне найти пропускную способность для всего теста производительности?

  4. Я предполагаю, что «Среднее значение» для контроллера транзакций домашней страницы отображается правильно, что является суммой всех 12 средних значений из 12 запущенных запросов api. Я прав?

  5. В строке с именем «Итого» и в столбце «Среднее» общее количество отображается как 538. Как вычисляется число 538? Что это означает?

  6. В строке с именем «Total» и в столбце «Samples» показано 40 выборок. Сюда также входят образцы контроллера транзакций (всего 3). Это не вводит в заблуждение, поскольку ожидается только 37 выборок (добавление выборок во все 3 контроллера транзакций = 37). Почему он также добавляет 3 выборки для контроллеров транзакций? Можем ли мы не видеть количество как 37, которые являются фактическими выполненными выборками (запросы API, отправленные на сервер)?

Ответ №1:

  1. Этого не должно быть, он действует как дополнительный «псевдо» сэмплер, который хранит совокупное время отклика своих дочерних элементов, подробнее см. В разделе Использование контроллера транзакций JMeter

  2. Согласно глоссарию JMeter:

    Пропускная способность рассчитывается как запросы / единица времени. Время вычисляется от начала первой выборки до конца последней выборки. Сюда входят любые интервалы между выборками, поскольку предполагается, что они представляют нагрузку на сервер.

    Формула такова: пропускная способность = (количество запросов) / (общее время).

  3. См. Пункт 2

  4. Это среднее арифметическое из 12 дочерних затраченных раз (сумма всех времен отклика, деленная на 12)

  5. См. Пункт 4, но вместо 12 результатов выборки учитываются все результаты выборки

  6. Смотрите Пункт 1, вот как работает контроллер транзакций, в зависимости от режима, в котором он может:

    • Либо добавьте дополнительный результат выборки, содержащий совокупное время отклика его дочерних элементов
    • Или замените его дочерние элементы одним результатом выборки с совокупным временем

    таким образом, вы можете выбрать из 40 выборок (37 3 контроллера транзакций) или 3 выборки (только контроллеры транзакций)