响应时间:是客户发出请求到得到响应的整个过程的时间。
- 网络传输时间:N1+N2+N3+N4
- 应用服务器处理时间:A1+A3
- 数据库服务器处理时间:A2
- 响应时间:N1+A1+N2+A2+N3+A3+N4
负载:模拟业务操作对服务器造成压力的过程,比如模拟100 个用户进行发帖。
QPS(Queries Per Second):每秒请求数,即每秒系统能够处理的请求数,它也是衡量系统处理能力的重要指标。
TPS(Transaction Per Second):每秒事务数,即每秒系统能够处理的交易或事务的数量,它是衡量系统处理能力的重要指标。
如何使用JMeter测试QPS
准备步骤:
点击Test Plan双击, 新增一个线程组.
然后指定线程数,这里我指定5000个线程,每个线程循环两次,也就是一共发送1w个请求.
下面就开始添加http请求,双击测试,新增HTTP Request
新增具体的请求参数,路径,端口等等.
添加结果树,这个可以看请求成功或者失败等.双击"举例"添加.
添加聚合报告,我们压测的QPS,响应时间等都可以在此报告中看到
现在准备工作已经完成,开始对http://127.0.0.1/test/test这个接口进行测试.点击开始按钮即可.
报告解析
这里主要查看的是聚合报告.
各字段含义如下:
-
Simples:总的样本数量,也就是总的请求数量
-
Average: 平均响应时间
-
Median:中位数,也就是50%用户的响应时间
-
90%Line:90%的用户响应不会超过该时间
-
95%Line:95%的用户响应不会超过该时间
-
99%Line:99%的用户响应不会超过该时间
-
Min:最小响应时间
-
Maxinum:最大响应时间
-
Error%:错误率
-
Throughput:吞吐量,默认情况下表示每秒完成的请求数,可当做QPS
-
Received KB/s:每秒接收的数据大小,单位KB
-
Send KB/s:每秒发送的数据大小,单位KB
当需要查看某个接口的QPS,查看Throughput指标即可.