从JMeter测试计划中获取最大并发性并限制其值



我有一个分布式JMeter设置,我想围绕它创建一个Java服务包装器

测试计划(JMX文件(由用户提供。因此,我不知道其中使用的属性和配置。用户测试计划可以有多个线程组和潜在的自定义线程组插件,如终极线程组、到达线程组等。

  1. 我想获得用户测试计划可以实现的总体最大线程数或最大并发性(活动线程(。在执行测试计划之前,是否可以获得该值?这将帮助我相应地为此测试运行配置服务器。

  2. 是否可以限制测试计划实现的总体最大并发性?(类似于我们可以使用定时器使用RPS((此外,请提及自定义线程组的选项,如Ultimate线程组(

这不是您可以有效控制的事情,因为:

  1. 如果当前数量不足以达到/保持目标吞吐量,可以配置JMeter来启动额外的线程,方法是使用吞吐量整形定时器和具有反馈功能的并发线程组

  2. 用户可以使用属性或函数/变量来参数化/计算并发

  3. 用户可以始终使用JSR223测试元素并执行以下操作:

    ctx.getThreadGroup().addNewThread(0, ctx.getEngine()) 
    

    这不是你能检测到的,因为有很多方法可以调用这个函数,包括反射

因此,您可以做的最大限度是依赖JVM限制,默认情况下,每个线程有1兆字节的堆栈大小,这为分配给Java的每GB内存提供1024个线程,因此您可以根据您的";大写字母";

相关内容

最新更新