`

WebSocket plugin for Jmeter压测报错

 
阅读更多

   压测WebSocket接口,在并发数超过2时,软件就开始疯狂报错,但是后端服务日志一切正常。

 

[Problems]
 - Unexpected error: null
java.util.LinkedList$ListItr.checkForComodification(LinkedList.java:953)
java.util.LinkedList$ListItr.next(LinkedList.java:886)
JMeter.plugins.functional.samplers.websocket.ServiceSocket.getResponseMessage(ServiceSocket.java:125)
JMeter.plugins.functional.samplers.websocket.WebSocketSampler.sample(WebSocketSampler.java:156)
org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
java.lang.Thread.run(Thread.java:744) 

各种百度都找不到解决方案,插件的BUG真是头疼,无奈只有去源头找问题,先查看下插件信息


 去GitHub下载源代码, 问题出在了类 ServiceSocket.java上

protected Deque<String> responeBacklog = new LinkedList<String>();

 替换为

 

 

Queue<String> responeBacklog = new ConcurrentLinkedQueue<String>();

 然后重新打成新的JAR包,替换到本地已经下载的

/usr/local/apache-jmeter-3.3/lib/ext/JMeterWebSocketSampler-1.0.2-SNAPSHOT.jar

 

 

重启Jmeter,再次压测,问题解决,TPS总有彪了起来。

  • 大小: 254.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics