使用jmeter对websockt和protobuf进行压力测试
这是基于Jmeter WebsocketSampler的插件,支持对基于websocket和protobuf的服务器进行测试。
想要应用到具体业务中,还需要进行代码改造,可参考demo代码。
工程结构
两个子工程组成:
1. jmeter-websocketprotobuf-front工程。基于maciejzaleski/JMeter-WebSocketSampler(https://github.com/maciejzaleski/JMeter-WebSocketSampler). 本人做了改动,以支持protobuf数据。
2. jmeter-websocketprotobuf-custom工程。这是需要根据自身业务进行改造的工程,该工程已经有Demo,可仿造进行改动。总体来说是把请求的json数据转换成pb数据去调用服务器接口,再用返回的pb结果转换成json数据显示。
用法
1. 下载并用maven编译和打包,命令为:mvn clean package -DskipTests -P dev
我们可以得到JMeter-WebsocketProtobuf-front-1.0.jar 和 JMeter-WebsocketProtobuf-custom-1.0.jar两个jar包
2. 将下列jar包放入jmeter的\lib\ext 包下:
JMeter-WebsocketProtobuf-front-1.0.jar
JMeter-WebsocketProtobuf-custom-1.0.jar
jetty-util-9.3.11.v20160721.jar
jetty-io-9.3.11.v20160721.jar
websocket-common-9.3.11.v20160721.jar
websocket-client-9.3.11.v20160721.jar
websocket-api-9.3.11.v20160721.jar
protobuf-java-2.6.1.jar
protobuf-java-format-1.2.jar
fastjson-1.2.8.jar
3. 重启jmeter后,即可以试试,截图如下:
修改相应的参数,点击运行后,即可在结果观察树中查看结果。
该插件支持ws和wss协议。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示