2015-04-02 1106 views
-1

假设选择与延迟线程创建一个线程组,直到需要的选项里面,如果一个HTTP请求前加30秒的恒定定时器,那么线程应该得到30秒后,向右创建? 这就是活动线程的数量应该为零的30秒。但我没有得到。当我开始运行线程组时,活动线程的数量开始增加。的JMeter延迟创建线程,直到需要,不断定时器

回答

0

定时器进入的地方,同时发送采样。不用于线程创建。如果你想延迟30秒创建线程,你应该有足够的加速时间。

如果你有10个用户,给提升周期为300秒。您会看到每30秒创建一个线程。 (假设延迟创建线程,直到需要的选项中选择)

+0

但是,当我发送HTTP请求仪式需要一个线程...所以,如果我的要求,所以在创建线程之前发送定时器..?我的需要是,有100个用户。最初所有这些用户都会向服务器发送请求。服务器响应一段等待时间。因此,在得到响应后,用户将等待规定的等待时间,并再次将请求发送给其他服务器。这里的问题是,当使用常量定时器添加等待时间时,线程仍处于活动状态,这会导致内存使用率。 – Stanly 2015-04-07 17:20:14

+0

所以为了优化利用率,我计划从第一个响应收到等待时间后终止线程,并在等待时间后重新启动线程,以使系统中活动线程的数量减少 – Stanly 2015-04-07 17:25:13

0

要多一点细节添加到Vinoth的回答是:

的JMeter在测试开始时分配所有的线程,除非线程组选项“延迟创建线程,直到需要”被选中。

在某些情况下,测试具有非常大量线程的CPU可以秒杀到100%,如果没有选择延迟线程创建选项终止服务器进程。

选中时,JMeter会根据斜坡上升时间分配线程。否则所有线程都将在测试开始时分配给JVM进程,而不管加速时间如何。

这有没有关系的线程是否被允许开始送样。这总是取决于加速时间和测试计划定时器。

-Addled

+0

其实我的需要是在启动线程之前给予不同的等待时间。也就是说,如果我有10个请求,每个请求必须等待不同的时间段,然后才发送请求。所以我可以给每个线程不同的加速时间吗?或者加速期是针对线程组的? – Stanly 2015-04-07 17:16:18