Spring Websocket STOMP load testing
Asked Answered
G

3

8

I am developing a messaging application using Spring REST, Websocket/STOMP and RabbitMQ. We use are using gatling for load/stress testing the REST end points of the application. However, we would like to know how many messages can be processed with Spring Websocket/STOMP end points. While Gatling has web socket, RabbitMQ and ActiveMQ extensions, I could not find one specifically for testing the STOMP end points.

Can you suggest a tool/framework that can be used to load/stress test Spring Websocket/STOMP end points?

Gin answered 21/12, 2016 at 22:17 Comment(5)
What does it mean? What are you expecting from that tool? Please, elaborate more. That isn't clear to me what is "load testing". ThanksIbex
Please check the question and see if it makes sense now.Gin
Yes, it's better. Thanks. And sorry: no ideas how to help you...Ibex
why do you want to test STOMP end points rather than the rest URL ..I am sure you can put same amount of load by hitting the rest URL which will be straight forward...Shiksa
How would I know the if message loads on websocket can be handled by STOMP end points without testing them? I can certainly test my Rbbitmq server with Gatling extensions , however that will not cover end to end. Am I missing something here?Gin
G
2

I solved this by using native STOMP text messages as payload. For example for the connection request, I sent

CONNECT

accept-version:1.0,1.1,2.0

host:stomp.github.org

^@

from my test case to the end point.

Gin answered 27/4, 2017 at 23:35 Comment(1)
in case someone needs a running sample with Gatling and STOMP: github.com/aemaem/gatling-websocket-stompImagination
L
1

I believe both Gatling and JMeter have WebSocket protocol support, see the following material for details:

Lascivious answered 23/12, 2016 at 0:32 Comment(1)
Well, as I mentioned in the original question I understand that there are extensions to test websocket end points. However, I am looking for something to test Spring STOMP end points on websocket.Gin
S
0

jmeter sockjs stomp sample

I have found a jmeter plugin in the github.Package the source code to the jar, put the jar file into \JMeter\lib\ext folder ,then you can connect the stomp websocket server.

Schottische answered 30/1, 2024 at 5:20 Comment(0)

© 2022 - 2025 — McMap. All rights reserved.