100 одновременных запросов на сервлет

Я хотел бы протестировать созданный мной сервлет с одновременными запросами (100 или 1000 или более). Я искал об этом, и я нашел JMeter, но я не совсем уверен, что он делает то, что я хочу.

Ты знаешь, как я мог сделать что-то подобное. Знаете ли вы какой-нибудь учебник или руководство, которое может мне помочь? (Я не опытный в программировании)

PS Я запускаю свой сервлет на Jetty, потому что я использую продолжения Jetty. Это также то, что я хочу проверить.

5 ответов

Решение

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

Кстати: запуск инструмента тестирования и приложения на одном компьютере не является сценарием тестирования производительности / пропускной способности, который может дать только представление о том, как ваш сервлет ведет себя в реальном мире.

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

Вы можете просто использовать любой тестер производительности HTTP, например apache bench:

ab -c 100 -n 100000 http://localhost/
# Hit the http://localhost/ with 100000 requests, 100 at a time

Это выведет что-то вроде:

Requests per second:    4497.18 [#/sec] (mean)

JMeter - хороший выбор - он прост в использовании и достаточен для большинства случаев. Если вы хотите сделать простые тесты, этого должно быть достаточно. Тем не менее, вы заинтересованы в написании более сложных сценариев тестирования, я бы порекомендовал HP LoadRunner (но это коммерческое программное обеспечение).

Вы можете переосмыслить точность вашего теста. Если ваши соединяющие агенты не определены синхронизированными часами, шансы одновременного подключения к событию довольно низки. Люди являются довольно хаотичными, органическими вычислительными единицами, привязанными к неточным часам, определяющим интервал между запросами к услуге. На самом деле вам нужно получить очень большое количество хаотичных запросов, прежде чем вы начнете вести себя как естественные одновременные инциденты с некоторым количеством пользователей в одном и том же разделе кода, сделавшего запрос и одну и ту же отметку времени. Теперь, весьма вероятно, что вы можете иметь большое число совпадений в коротком окне, например 200 в секунду, но истинное одновременное поведение довольно редко встречается в реальных условиях.

Пища для размышлений....

Другие вопросы по тегам