Jmeter压测-负载机为windows和linux,参数化使用CSV Data Set Config

1、 压测关注指标(tps要达到多少,响应时间要达到多少,并发数达到多少,测试时指标要给出才好判断系统性能好坏)

TPS:服务端每秒处理的请求数,TPS越大越好,说明服务端处理的能力比较强

响应时间:服务端处理请求的时间,响应时间越短越好

通过聚合报告进行查看

2、 结论

参数化使用CSV Data Set Config时:

windows作为负载机,需要将参数化文件拷贝过去,不用拷贝脚本到负载机;

linux作为负载机,也同样需要将参数化文件拷贝过去,不用拷贝脚本到负载机;

 

当同时需要增加windows和linux作为负载机时,因为windows和linux绝对路径使用的分隔符不同,windows中是\,linux中是/:所以用绝对路径时无法同时加载参数化文件;

解决:将CSV Data Set Config 中Filename路径直接写为相对路径:路径中直接输入参数化文件名称,这样就可以同时负载成功;

 

3、  添加负载机

(1)、Windows作为负载机:

在jmeter的bin目录下,找到jmeter-server.bat,启动jmeter-server

 

         linux(或mac)作为负载机:

在jmeter的bin目录下,找到jmeter-server.sh,启动jmeter-server,如果报错Server failed to start: java.rmi.RemoteException: Cannot start. test is a loopback address.An error occurred: Cannot start. test is a loopback address.

可通过指定ip来启动成功:通过./jmeter-server -Djava.rmi.server.hostname=192.168.0.XXX指定ip启动成功;

 

(2)、找到主控机的jmeter的配置文件()bin目录下的jmeter.properties),查找remote_hosts,将负载机的ip添加到remote_hosts,多个ip之间用逗号隔开,默认端口为1099,具体端口号与server-port一致

                  

(3)、改完配置文件后要重启才能生效,一般点远程全部启动就可启动所有负载机,自动分配请求

         如果有参数化文件,则在负载机的同样位置上也得有参数化文件

 

 

4、  远程启动负载机报错问题解决

Linux负载机:

启动linux负载机报错jmeter脚本导入参数化文件uname.txt后,远程启动负载机,jmeter-server.log中报错uname.txt must be exist and readable

 

将参数化文件放到bin目录下,启动./jmeter-server,负载成功;

 

Windows负载机:

如果出现jmeter-server.log中能看到运行日志是成功,但主控机jmeter中收不到负载机返回的结果,发现log文件链接的ip是192.168.1.111,不是主控机机的ip:禁用其他不用的网卡后,能收到返回结果负载机加载成功;

         主控机器中jmeter脚本导入参数化文件uname.txt后,远程启动负载机,jmeter-server.log中报错uname.txt must be exist and readable:

 

将参数化文件uname.txt 放到负载机windows的相应目录下,启动远程服务,收到负载机的返回结果,负载成功;

        

5、  压测脚本设置

1)、添加线程组(已安装jdk(配置好环境变量)和jmeter)

 

 

 

(1)线程数:类似LR中的vu,表示多少个用户并发

(2)Ramp-Up Period(in seconds):表示延迟多少秒启动用户,我们此处设置为0,表示立即启动所有用户

(3)循环次数:如果勾选永远,如果不停止或在设定时间内会一直循环一般配合调度器进行使用;如果只想循环10次,那么久取消永远勾选框,在后面输入框中输入10即可;当配置了调度器后,循环次数要勾选永远;

(4)Delay Thread creation until needed:需要的时候再启动线程

(5)调度器配置:

持续时间(秒):设置脚本持续的时间,如需要跑15分钟则设置为900;如果在持续时间内结束时间已到,则持续时间会覆盖结束时间继续执行(一般压测时间为10或15分钟);

启动延迟(秒):为0,则表示不延迟,可根据需要进行设置;在点击启动后,如果启动时间已经到,但是还没有到启动延迟的时间,则启动延迟时间将会覆盖启动时间,等到启动延迟的时间到达后,才执行脚本。 

2)、添加http请求

 

协议:http

服务器名称或ip:填写要压测的服务器名称或ip地址

端口号:默认80,根据服务器端口配置进行填写

方法:GET/POST(get和post区别:get请求的参数在url中,post请求参数写在body里)

路径:填写要压测的路径

Content encoding:一般为utf-8

与请求一起发送参数:填写请求中发送的参数名称和要传的值

3)、添加查看结果树

 

取样器结果:查看取样数据的详细信息

请求:查看请求发送的信息

响应数据:查看服务器返回数据是否为正确;

 

4)、添加聚合报告

 

Label:节点名称

Samples:在压测的区间,总共发出的请求数或事物数(与并发用户数不是一个概念)

Average:响应时间,单位是毫秒,单位可进行修改

Median:中间响应时间,50%的请求数小于

90%Line:90%的请求数小于

95%Line:95%的请求数小于

99%Line:99%的请求数小于

Min:最小响应时间

Max:最大响应时间

Error%:错误率

Throuput:TPS,与lr中的单位不同

Received KB/s:每秒接收的字节数

Sent KB/s:每秒发出的字节数

 

Linux作为负载机时,压测结果可通过文件名-浏览进行导入查看

 

转载于:https://www.cnblogs.com/lamon/p/8604022.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值