Стресс-тестирование WebSockets в Jmeter

Я пытаюсь провести стресс-тестирование своего сервера WebSocket с помощью подключаемого модуля Jmeter (jmeter-websocket). Дело в том, что плагин поставляется без документации, как с ним работать, и поэтому я не уверен, что мои ожидания от него подтверждаются или нет.

Мне удалось запустить пробный тест с использованием упомянутого плагина, и он был успешно подключен к серверу. Ему также удалось связаться с сервером, но как только он получил первый ответ, он отключился. Я надеялся настроить этот плагин таким образом, чтобы он поддерживал постоянное соединение с сервером WebSocket в течение нескольких минут, отправляя и получая пару сообщений, прежде чем он отключится.

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


person Mehran    schedule 01.09.2013    source источник
comment
Вы узнали, как это сделать? Я также пытаюсь держать WebSocket открытым   -  person Tsume    schedule 13.10.2013
comment
К сожалению нет. Как видите, ответа пока нет (честно говоря, я не думаю, что он когда-либо будет).   -  person Mehran    schedule 14.10.2013
comment
Это довольно печально. Вы в конечном итоге использовали другой инструмент бенчмаркинга? Мне нужен тот, который может не только использовать WebSockets, но и отправлять сообщения JSON.   -  person Tsume    schedule 16.10.2013
comment
Как только я найду решение этой проблемы (так или иначе), я опубликую его здесь, но, к сожалению, еще этого не сделал. Единственное, что я могу добавить к вашему комментарию, это то, что отправка сообщений JSON довольно проста (поскольку они представляют собой простой текст, отправляемый как в POST), поэтому вашей единственной заботой должно быть стресс-тестирование WebSockets.   -  person Mehran    schedule 16.10.2013


Ответы (2)


У меня была точно такая же проблема. упомянутый вами плагин работал только для HTTP-подобного запроса/ответа, но я не мог использовать его для «длинного» соединения.

Взгляните на этот http://github.com/maciejzaleski/JMeter.

Функции:

  • Поддерживает HTTS/HTTPS (ws/wss) версию протокола WebSocket.
  • Возможность игнорировать ошибки SSL-сертификата
  • Потоковая передача позволяет одному соединению оставаться открытым на протяжении всего теста.
  • Ответ должен соответствовать предварительно определенному регулярному выражению
  • Тайм-аут ответа
  • Журнал сообщений ответа (создайте ответ Sampler из нескольких сообщений сервера)
  • Соединение может быть закрыто, если сервер отправляет сообщение, соответствующее предварительно определенному регулярному выражению.
person Maciej Zaleski    schedule 16.01.2014

По состоянию на ноябрь 2017 года лучшим Websocket Sampler для Apache JMeter является этот сторонний плагин:

Его можно легко установить через менеджер плагинов jmeter-plugins.

person UBIK LOAD PACK    schedule 23.08.2016