Нагрузочное тестирование приложения Java-клиент-сервер-приложение
Мы используем пружинное удаленное взаимодействие для клиент-серверного приложения. Теперь мы сомневаемся, как реализовать настоящий нагрузочный тест с сериализованными объектами.
Проблема состоит в том, что многие инструментарии нагрузочного тестирования основаны на HTTP-связи в виде простого текста, поэтому очень легко параметризовать http-запросы. Поскольку пружинное удаленное взаимодействие основано на сериализованных объектах, мы не можем легко параметризовать http-связь с сервером.
Моя первая идея заключалась в том, чтобы инкапсулировать конечную точку пружинного удаленного взаимодействия и вызвать службу через классы обслуживания на стороне клиента. Но как я могу реализовать вызов удаленного сервиса из нескольких клиентов, чтобы получить реальный сценарий тестирования нагрузки? Есть ли какое-либо решение для упаковки клиентского сервиса простым способом?
У кого-нибудь есть опыт, как это реализовать?
Спасибо за совет.
2 ответа
На форумах Spring обсуждается, как использовать JMeter для тестирования. Чтобы использовать JMeter, вам нужно написать собственный сэмплер. У них есть примеры на сайте JMeter.
В качестве альтернативы, вы можете попробовать Grinder. Скрипты тестирования написаны с использованием jython, но возможно проще создавать тесты для нестандартных протоколов.
Существует коммерческий плагин JMeter, который позволяет это, см.:
Чтобы сделать ваши тесты реалистичными, вам нужно будет варьировать контент в сериализованных объектах.
Этот плагин Java Serialization позволит следующее:
Простая запись трафика с JMeter Proxy Server, будет создан план тестирования с использованием собственного сэмплера
Простая вариабилизация запросов (которые будут отображаться в виде XML) благодаря такому простому синтаксису, как, например, ${searchWord}, где искомый запрос может происходить из CSV или любой пользовательской переменной.
Простое извлечение данных из ответов с использованием стандартных почтовых процессоров JMeter
Простая отладка запросов / ответов с помощью стандартного элемента дерева результатов JMeter View
Отказ от ответственности: я являюсь членом компании, которая распространяет это решение