jmeter-监听器之每秒事务数响应时间活动的线程数服务器性能指标监控

引言
Transactions per Second 也就是每秒事务数,在性能测试中非常重要的一个指标,我们在聚合报告里面能看到最后的测试结果TPS值。如果我们想查看更详细的报告,查看压测过程中不同时间段的每秒事务数,可以使用 Transactions per Second 插件来查看(jp@gc - Transactions per Second)。

一、插件安装

在插件管理器,安装jpgc - Standard Set,
在这里插入图片描述
安装成功后
在这里插入图片描述

二、监听器-jp@gc - Transactions per Second

Transactions per Second 插件的作用是在测试脚本执行过程中,监控查看服务器的TPS表现————比如整体趋势、实时平均值走向、稳定性等。
添加监听器-jp@gc - Transactions per Second
在这里插入图片描述
设置线程10,循环100次开始压测,聚合报告看到吞吐量12.5/sec
在这里插入图片描述
再查看 jp@gc - Transactions per Second 插件的报告,可以看到更详细的实时的TPS
在这里插入图片描述

三、监听器之响应时间Response Times Over Time

压测的时候,我们会经常关注2个重要的指标 TPS 和 RT

TPS 每秒处理的事务数(Transactions per Second),jmeter的Throughput为吞吐量(请求数/秒)
RT 响应时间(Reponse Time),从发起请求到完全接收到应答的时间消耗。
TPS:每秒处理的事务数,jmeter的Throughput为吞吐率(请求数/秒)
宏观上:TPS=并发数/响应时间,jmeter的Throughput = (number of requests) / (total time)
线程数5,循环50次
在这里插入图片描述
我们可以根据聚合报告看到,平均响应时间是376毫秒,吞吐量12.8/sec
在这里插入图片描述
通过上面的公式 tps = 线程数5/平均响应时间0.376秒 ,算出的结果是13.29,跟统计的12.8差不多。

也可以这样理解这个公式,绝对的并发是不存在的,请求发出的时间总有先后,绝对的TPS也是无法计算的,统计的角度看
TPS = 服务器处理请求总数/花费的总时间
我们设置线程组的持续压测时间为15秒,设置线程数5,于是压测的结果TPS值是13.1
在这里插入图片描述
根据公式TPS = 总请求数200/总时长15秒,得到的结果是13.3,这样就很接近报告的TPS值了
响应时间(Reponse Time)
RT 也就是平均响应时间(Reponse Time), 在聚合报告里面可以看平均值(单位是毫秒),如果我们想查看更详细的报告,跟着每个时间段的平均响应时间。
添加-监听器-jp@gc - Response Times Over Time
先看聚合报告的平均值367毫秒
在这里插入图片描述
RT
再看实时监控的平均响应时间
在这里插入图片描述

四、监听器之活动的线程数(Active Threads Over Time)

jmeter压测的时候,在执行测试的过程中每个线程组有多少个活跃的线程数,可以通过监听器Active Threads Over Time查看
线程数与Ramp-Up时间
线程数就是我们设置是虚拟用户数,可以理解为1个线程,就是一个虚拟用户。
Ramp-Up时间 也就是启动时间,或者说是准备时间,比如我们设置线程数为10,那么这些用户不是一瞬间就来的,它需要有一个准备的时间。
线程数10, Ramp-Up时间设置为1秒,那么在1秒内会启动这些线程。
线程数10, Ramp-Up时间设置为2秒,那么在2秒内会启动这些线程。
设置线程数10, Ramp-Up时间设置为1秒
在这里插入图片描述
从上面结果看出在1秒内,线程全部启动完毕
设置线程数10, Ramp-Up时间设置为2秒
在这里插入图片描述
从上面结果看出在2秒内,线程全部启动完毕

五、监听器之服务器性能指标监控(PerfMon Metrics Collector)

我们做性能测试的时候,不仅要关注jmter上的测出来的TPS值和响应时间等指标,还得关注服务器的性能指标。服务器上性能指标如何监控呢,可以安装PerfMon服务器代理来监控
PerfMon服务器代理安装
PerfMon服务器代理的github地址https://github.com/undera/perfmon-agent,可以下载到安装包
也可以直接下载到要测试的服务器上

wget https://github.com/undera/perfmon-agent/releases/download/2.2.3/ServerAgent-2.2.3.zip

下载后解压,并启动代理
执行./startAgent.sh 启动服务,当看到如下提示,说明启动成功

./startAgent.sh

在这里插入图片描述
在自己windows本地用telnet端口能不能连得通

telnet ip port

现在用jmeter用于测试
添加-监听器-jp@gc - PerfMon Metrics Collector

服务器硬件资源的监控
配置需要监控的性能指标,这里配置了CPU和Memory,结果如下图所示
在这里插入图片描述

注意事项:
1.阿里服务器要特别注意:4444的端被禁止向外开放,需要改变端口命令:可以换个端口重新启动,带上-udp-port 和 --tcp-port两个参数
./startAgent.sh --udp-port 0 --tcp-port 5319
2.防火墙 要么关闭,要么开放你设定的端口,如果你的服务器是云服务器,请在云服务器管理台,安全策略中,配置开放端口
3.建议,不要在一个监控器中,添加多个监控项
使用脚本在百度云盘(监听20210220.jmx)(易捷服务器)

  • 2
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值