Jmeter系列(5)- 基础线程组Thread Group
2021-03-10 20:29
标签:时间 reg 固定 mamicode 访问量 请求 group 模拟 没有 ? 每个线程都会独立的运行测试计划,互不干扰,多个线程用于模仿对服务器的并发访问。 默认:继续 假设一个HTTP Sampler报错了,后面还有其他请求,最好肯定是继续执行下去啦 设置的线程属性值是 而聚合报告是 ? 延迟创建线程,直到线程被需要、采样器开始执行时才会被创建,避免资源浪费 ? When selected, JMeter will allocate threads according to the ramp up times. Otherwise all threads are allocated to the JVM process the moment the test is started, regardless of ramp up time. ? 选中后,JMeter将根据 Ramp-up 时间来分配线程。 否则,无论 Ramp-up 时间如何设定,所有线程都将在测试开始时分配给JVM进程。 当线程组运行完持续时间后,会 所以测试计划总的时间(右上角的时间)会 > 持续时间+启动延迟 Jmeter系列(5)- 基础线程组Thread Group 标签:时间 reg 固定 mamicode 访问量 请求 group 模拟 没有 原文地址:https://www.cnblogs.com/dongye95/p/14143563.html一、Thread Group 基础线程组介绍
1.1 Thread Group的简单理解
线程数
1.2 Thread Group提供的主要作用
1.3 Thread Group的独立性
二、Thread Group线程属性讲解
2.1 在取样器错误后要执行的动作
建议:
继续2.2 线程属性值
【预期压力值】
【压力测试的实际结果】
2.3 线程数
模拟真实用户数
,1线程数 = 1用户数【启动线程并运行,释放线程】
线程数建议不超过1000
2.4 Ramp-Up时间(秒)
特别注意:
在负载测试的时候,尽量把ramp up设置大一些,让性能曲线平缓,容易找到瓶颈点2.5 循环次数
默认一次【便于理解:线程的迭代次数、重复发起请求的次数】
永远
,那么 jmeter 将以最大的可能去发送请求,以此测试出最大并发数
2.6 线程属性值的简单例子
上图:
10s 内启动并运行 10 个线程,一共启动 10 个线程,总共发送 20 个请求(10*2),每秒启动一个线程,然后运行两次**
**备注:
如果 ramp-up 时间内,所有线程不能启动运行完的话,时间则会顺延下去2.7 Ramp-up 设置注意事项
2.7.1 Ramp-up需要设置足够长的时间来避免在测试刚开始时工作量过大
【过小的 ramp-up period 】
测试开始时
就启动全部线程并立即发送请求
,这样很容易让服务器达到饱满状态,且瞬间会增加很大的负载量,容易让服务器超载,这样是不合理的;初始状态时一起并发访问
,从而引起不正常的初始访问峰值,可以通过 Jmeter 的聚合报告看到这种情况2.7.2 Ramp-up还必须足够短,保证最后一个线程在第一个线程完成之前开始运行
【过大的 ramp-up period 】
具体的表现为:
一些线程还没有启动,初期启动的部分线程已经结束了【导致实际并发量并会小于预期并发量】
2.7.3 如何确定一个合理的ramp-up period
三、延迟创建线程直到需要
3.1 官方英文
3.2 译文
四、调度器Specify Thread Lifetime【scheduler】
调度器的作用:
控制每个线程组运行的持续时间以及它在多少秒后再启动Duration (seconds) :
持续时间;线程组运行的持续时间Startup Delay (seconds):
启动延迟;测试计划开始后,线程组的线程
将在多少秒后再启动运行
五、调度器和循环次数的关系
固定值且 ≠ -1
,持续时间不会生效
,以循环次数为准永远或 -1 时
,持续时间才会生效
六、调度器注意事项
逐步释放线程
,不会一下子把所有线程释放掉,而释放线程也是需要时间的~七、预习TPS
【上图,右\**上\**角黄色三角形的时间】
实际的TPS
是由服务器决定的,因为它是衡量服务器处理能力的性能指标
文章标题:Jmeter系列(5)- 基础线程组Thread Group
文章链接:http://soscw.com/index.php/essay/62916.html