Как и при любом сетевом тесте, всегда будут проблемы, особенно с задержкой - даже если вы можете отправлять ровно 6 в секунду, они будут отправляться последовательно (именно так и отправляются пакеты). и не все могут быть выполнены за эту секунду, плюс время обработки.
Обычно, когда метрики производительности имеют конкретное значение x в секунду, они измеряются за определенный период времени. У вашего API может даже быть буфер - так что технически вы можете отправлять 6 в секунду, но обрабатывать 5 в секунду, с буфером 20, что означает, что его хватит на 20 секунд трафика, так как вы бы отправили 120, что для обработки потребуется 120/5 = 24 секунды. Но любое большее, чем это, приведет к переполнению буфера. Так что просто отправить ровно 6 в секунду для тестирования недостаточно.
В группе потоков вы правы, устанавливая количество потоков (пользователей) равным 6. Затем запустите его в цикле навсегда (отметьте его или поместите в цикл while) и добавьте слушателя, например, сводный отчет и дерево результатов. Результаты, которые вы можете использовать для проверки того, что нужные данные отправляются и на которые были даны ответы (при условии, что вы проверяете ответы), и в сводном отчете вы можете увидеть, сколько каждого действия происходит в час (очевидно, умножьте на 3600 для секунд, но из-за этой неточности лучше всего запустить его в течение длительного времени).
Теперь можно запустить начальный нагрузочный тест, а в качестве более точного теста вы можете оставить его работать на более длительное время (тест выдержки), чтобы увидеть, не появятся ли какие-либо другие проблемы - переполнение буфера, утечка памяти или другие неожиданные события.
person
Mark Mayo
schedule
17.02.2011