Неожиданное максимальное время отклика Tomcat на запрос при выполнении нагрузочного тестирования с использованием jmeter - PullRequest
0 голосов
/ 05 мая 2020

У меня есть приложение весенней загрузки, которое имеет конечную точку post, которая принимает запрос и отправляет его в другую службу, получает ответ и сохраняет его в базе данных mon go и возвращает ответ пользователю. Приложение разворачивается на встроенном tomcat весенней загрузки. Я использую jmeter, чтобы увидеть максимальное время отклика, пропускную способность и т. Д. c.

Когда я запускал тест из jmeter с 500 потоками в течение 10 минут, у меня было максимальное время около 3500 мс. Когда я повторяю тест с jmeter, максимальное время сокращается до 900 мс. Опять же, если я запускаю тест через долгое время, максимум снова поднимается до 3500 мс.

Я не могу получить никакой информации относительно этого поведения кота.

Не могли бы вы мне помочь с пониманием этого поведения кота?

1 Ответ

0 голосов
/ 05 мая 2020

Что вы имеете в виду под «неожиданным»? Более низкое время отклика при повторении теста можно объяснить реализацией вашего приложения, например, когда вы запускаете нагрузочный тест для приложения, которое только что развернуто, его производительность может быть не оптимальной, а при повторении теста кеш «нагревается» up ", чтобы повысить производительность.

Другим объяснением может быть JIT-оптимизация , поскольку JVM анализирует шаблон использования вашего приложения и выполняет внутренние улучшения байт-кода, чтобы лучше обслуживать данный шаблон загрузки.

Третье возможное объяснение: Кэширование MongoDB , если 500 пользователей отправляют одни и те же ответы, возможно, база данных хранит наборы результатов в памяти, а при повторении теста это не так. фактически обращается к хранилищу, но возвращает результаты прямо из памяти, что быстро и дешево. Подумайте о том, чтобы правильно параметризовать ваш тест JMeter , чтобы каждый поток (виртуальный пользователь) использовал свои собственные учетные данные и выполнял запросы, отличные от других потоков, но имейте в виду, что тест должен быть повторяемым поэтому не используйте каждый раз уникальные данные, лучше иметь достаточный набор предопределенных тестовых данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...