JMeter 作为一个开源的接口性能测试工具,其本身的小巧和灵活性给了测试人员很大的帮助,但其本身作为一个开源工具,相比于LoadRunner,在功能的全面性上就稍显不足。因此介绍下 JMeter 中TPS、QPS、服务器性能监控插件的使用方法
前置:安装插件管理工具
要使用JMeter插件,要先在JMeter中安装插件管理工具
下载地址:JMeter-plugins.org
安装:下载后文件为 plugins-manager.jar 格式,将其放入 JMeter 安装目录下的 lib/ext 目录中,然后重启 JMeter
重启 jemter 后,点击选项,最下面的一栏,如下图所示:
打开插件管理工具
- Installed Plugins (已安装的插件):即插件 jar 包中已经包含的插件,可以通过选中勾选框,来使用这些插件;
- Available Plugins (可下载的插件):即该插件扩展的一些插件,可以通过选中勾选框,来下载你所需要的插件
- Upgrades (可更新的插件):即可以更新到最新版本的一些插件,一般显示为加粗斜体,可以通过点击截图右下角的 Apply Changes and Restart JMeter 按钮来下载更新
注:一般不建议进行更新操作,因为最新的插件都有一些兼容问题,而且很可能导致 JMeter 无法使用(经常报加载类异常)
插件:TPS 每秒事务数
插件名称:Transactions per Second
TPS:每秒事务数,性能测试中最重要的2个指标之一。该插件的作用是在测试脚本执行过程中,监控查看服务器的 TPS 表现,比如整体趋势、实时平均值走向、稳定性等
插件下载地址:Response Times Over Time
将下载好的文件,解压缩,然后把相关 jar 包放到对应目录下。注意不需要再添加插件管理器 plugins-manager.jar 了,因为之前已经添加了
重启 JMeter 后,就可以在监听器中看到该插件:
某次压力测试 TPS 变化展示图:
插件:事务响应时间
插件名称:Response Times Over Time
TRT:事务响应时间,性能测试中,最重要的两个指标之一。该插件的主要作用是在测试脚本执行过程中,监控查看响应时间的实时平均值、整体响应时间走向等
插件安装方法:在安装 TPS 插件的时候就已经安装好 TRT 了
重启 JMeter 后,就可以在监听器中看到该插件:
某次压力测试 TRT 变化展示图:
插件:服务器性能监控数据采集器
JMeter 中安装查看数据插件
要获取服务器相关性能指标,则需要在 JMeter 中安装指标的查看插件
插件名称:Servers Performance Monitoring
服务器性能监控数据采集器:在性能测试过程中,除了监控 TPS 和 TRT,还需要监控服务器的资源使用情况,比如 CPU、memory、I/O等。该插件可以在性能测试中实时监控服务器的各项资源使用
下载地址:Servers Performance Monitoring
下载到压缩包后,将相关jar包放到 JMeter 安装文件中的lib/ext中,重启 JMeter 即可看到该监视器插件:
服务端中安装服务监控插件
要获取服务器相关性能指标,只在 JMeter 中安装插件工具还不行,需要在服务器中安装 ServerAgent 插件
插件名称:ServerAgent
下载地址:ServerAgent
下载成功后,将压缩包上传到被测服务器中,解压后进入目录,其中:
- Windows 环境,双击 ServerAgent.bat 启动
- linux 环境执 ServerAgent.sh 启动,默认使用4444端口
例如在 windows 中,显示如下提示表示 ServerAgent 启动成功
更多关于 ServerAgent 的安装方式详见:官方文档
服务器指标监听方式
在测试脚本中添加 jp@gc - PerfMon Metrics Collector 监听器,然后添加需要监控的服务器资源选项,启动脚本,即可在该监听器界面看到资源使用的曲线变化。如下图所示:
在脚本启动后,即可从界面看到服务器资源使用的曲线变化,Chart 表示主界面显示,Rows 表示小界面以及不同资源曲线所代表的颜色,Settings 表示设置,可选择自己需要的配置
注:测试脚本需要持续运行一段时间,才可以看到具体的曲线变化,否则 ServerAgent 端会断开连接!
