我正在使用jmeter为测试环境进行一些前端数据加载。但是,在这种环境中有一个特定的部分,如果两个线程同时命中应用程序,它将导致502错误。
我是Jmeter的新手并且拥有一个运行良好的脚本,除非我将线程碰到并且当两个或多个线程在此部分上竞争时它们会崩溃。
是否有一种简单的方法可以让两个线程在jmeter中进行通信?我想要一些方法来实现某种锁定,这样如果一个线程检测到另一个线程在同一个地方,它就会等待。
答案 0 :(得分:2)
此类通讯有自定义插件:http://code.google.com/p/jmeter-plugins/wiki/InterThreadCommunication
但是,我认为您的服务存在一些问题,因为具有如此低的并发限制是不好的做法。
答案 1 :(得分:1)
还有一件事,非常简单,就是在Error上选择'Stop Thread'或'Start Next Thread Loop'(就像你的502)。竞争线程将不会等待,它将停止并重新启动,希望足以错开流量以允许更多所需的事务。这将是一种简单的方法,我认为很难用Logic控制器和自定义Javascript。
答案 2 :(得分:0)
在第一个答案的基础上,您将需要'性能调整'您的Apache服务器以提高最大线程数,在运行的实例上配置负载平衡/故障转移,以及调整垃圾收集,堆大小等你在那里我用Apache完成了所有这些工作,但我听说Lightspeed服务器标配了这些增强功能,所以我真的推荐Lightspeed服务器。