首页 > 代码库 > JMeter 服务器性能监测插件介绍

JMeter 服务器性能监测插件介绍

简介

压力测试过程中,随时对负载服务器的健康状况的把控是相当重要的,有了这些数据,我们才能准确分析出压测瓶颈。如果你面对的是一个集群,如果能了解到负载是否被正确分发,是不是一件很漂亮的事情?为了达到这些目的,JMeter 插件包现在能够支持服务器监控啦!使用这个插件,你几乎可以在所有平台上对服务器的 CPU、内存、Swap、磁盘 I/O、网络 I/O 进行监控!
以下监控插件截图演示了压力测试中的 4 台服务器的 CPU 使用情况:
servers_performance_monitoring

支持指标统计

版本 0.5.0 之后 JMeter 的服务器代理工具能够支持到 75 项系统指标。参见详细列表。

工作原理

概念

JMeter 无法提取除 Tomcat 之外的其他服务器的默认指标。为了克服这一状况,我们研发了一个服务器代理,JMeter 通过这个代理来获取性能数据。这个代理使用的是 SIGAR 开源库,它是由一个 Java 通用部分和一个每个 OS 的本地库组合而成。
agent_architecture

安装

服务器代理工具详情描述参见 http://jmeter-plugins.org/wiki/PerfMonAgent。

用法

GUI 模式

GUI 模式下,只需要添加服务器性能监控监听器,定义服务器列表以及要监控的指标类型,确保代理正常运行在远程服务器上并且没有被防火墙封锁,然后就可以运行测试了。数据将会在实时图表中显示。

非 GUI 模式

如果你在非 GUI 模式下跑 JMeter(参考博客《使用非 GUI 模式运行 JMeter 压力测试》),并且想把监控数据保存到一个文件中,只需在 GUI 中为服务器性能监控监听器配置好要输出到的结果文件即可,就像你为其他监听器所配置的那样。压力脚本运行结束之后,你就可以把保存的文件拖到 GUI 并查看图形数据了。

JMeter 属性

  • jmeterPlugin.perfmon.interval - 指标收集时间间隔,单位是毫秒
  • jmeterPlugin.perfmon.useUDP - 值为 true 或 false,在 TCP 连接失败后是否尝试 UDP 连接

在线查看你的性能数据

Loadosophia.org 有个 feature,通过它,你可以在一个精彩的 Web 接口中查看你收集的性能数据。这是一个使用示例。
原文链接:http://jmeter-plugins.org/wiki/PerfMon/。

JMeter 服务器性能监测插件介绍