我有一个测量登录功能性能的方案我已经使用JSR223预处理器来加密我的密码使用Javascript它的大约2000行代码它工作正常它成功加密密码,我能够使用我的脚本登录它的工作原理少数用户很好。
如果我们选择大量用户脚本一旦到达JSR223预处理程序线程就会非常快地完成前3个步骤,处理它会花费很长时间来延迟性能测试。
有任何建议可以微调这个过程吗?
我已经将缓存大小配置为1024,即使执行时间很长。
600位用户使用1个Master和3个Slave环境完成整个过程需要1小时+ +时间。
答案 0 :(得分:0)
JavaScript不是与JSR223 PreProcessor一起使用的最佳语言,它通过Rhino或Nashorn引擎运行,并且您的表达式一直在使用不是非常高效的方式从头开始评估。
根据JMeter Best Practices,建议使用Groovy脚本引擎。假设配置良好,您将能够将groovy脚本编译为本机JVM字节码,因此性能将远高于JavaScript。
为了在Jmeter中获得Groovy支持,您只需要
有关更详细的说明和脚本最佳做法,请参阅Beanshell vs JSR223 vs Java JMeter Scripting: The Performance-Off You've Been Waiting For!指南。
答案 1 :(得分:0)
负载测试应避免使用Javascript。
最好的选择是使用:
Groovy的
检查缓存编译密钥
为每个Test元素输入一个唯一键
这将使JMeter编译脚本,从而获得最佳性能,请阅读以获取更多信息: