zoukankan      html  css  js  c++  java
  • Jmeter监控服务器性能

     Jmeter作为一个轻量级的性能测试工具,开源、小巧、灵活的特性使其越来越受到测试人员喜爱。在实际的

    项目中,特别是跨地区项目,排除合作方指定要求使用Loadrunner作为性能测试工具外,Jmeter会是首选。本

    篇文章,就着重介绍下Jmeter服务器性能监控插件PerfMon Metrics Collector的安装使用以及使用过程中所遇

    问题的解决方法。

    1|0一、Jmeter插件的下载安装

      可能大家会有疑问,为什么不是PerfMon Metrics Collector的安装?如果去网上搜一下Jmeter插件,你会

    发现大都是针对某一个插件怎么安装,实际安装中可能会出现各种各样的问题,更有甚者好多博文基本都是C、V

    产品。其实,只要把Jmeter插件包完整安装,你就可以随心所欲的使用了。

      下载地址:https://jmeter-plugins.org/install/Install/,下载界面如下:

      插件安装:下载完成后的文件是plugins-manager.jar格式,将其放到Jmeter安装目录下的libext目录,然后重启Jmeter即可。

    2|0二、服务端插件下载和配置

      要使用PerfMon Metrics Collector,还需一个配合使用的插件ServerAgent。

      下载地址:https://pan.baidu.com/s/1exfy8l_OYjG2DKNu1IKXLg  提取码: nsx5

      敲黑板:不要把压缩包解压在本地,本地根本用不到,要把整个压缩包放到服务器上面!

      如果服务器是Linux环境:

      执行命令: cd /usr/bin ,用Xftp把ServerAgent-2.2.1.rar上传到服务器的/usr/bin下;

      执行命令: unrar -e ServerAgent-2.2.1.rar ,解压压缩包;

      执行命令: rm -rf ServerAgent-2.2.1.rar ,删除原压缩包;

      执行命令: cd ServerAgent-2.2.1 ,进入ServerAgent-2.2.1目录;

      执行命令: chmod 777 startAgent.sh ,将startAgent.sh设置成可执行文件;

      执行命令: sh startAgent.sh ,启动Agent服务;

      执行命令: nohup ./startAgent.sh & ,把Agent服务放到后台并且不挂起。

      如果服务器是Windows环境:

      将压缩包ServerAgent-2.2.1.rar解压,直接运行startAgent.bat即可,如果出现下图情况表示启用成功:

    3|0三、PerfMon Metrics Collector插件使用

      1.插件添加

      打开Jmeter,根据项目需求调整脚本,最后添加各类监控。

      Host/IP:要监控服务器的地址

      Port:默认端口

      Metric to collect:监控资源配置项

      Add Row、Copy Row、Delete Row:分别对应的是添加按钮、复制按钮、删除按钮

      Chart:曲线图展示主界面

      Rows:曲线图小界面以及不同资源曲线所代表的颜色

      Settings:设置

      2.监控使用策略

      如果测试场景的测试执行时间较长,采集的监控数据量比较大,为了在GUI模式查看曲线图时更

    方便、快捷,建议将各个监控指标项单独使用一个PerfMon监听器,从而配置不同的指标项数据存储

    到不同的文件中,测试执行完毕后,载入数据和数据查看都会更快。

      如果预计数据量不会太大,可以以服务器为单位来划分PerfMon监听器。这样可以方便的观察到

    整个测试过程中,某台服务器各项资源使用情况的变化趋势。

      对于分布式服务、为了方便观察各个节点的负载分布、负载变化趋势,可以考虑将同类型的节

    点放置到同一个PerfMon监听器,以便对比观察。

      3.曲线图数值

      当一个PerfMon监听器中展示多种指标项的数据时,为了曲线图的可观察性,插件会自动进行

    优化:将展示的数值在采集到的真实数值上放大。目的是为了保证不同数据项在同一坐标系中展示

    时,各项都变化趋势都能够被观察到。

      4.曲线图设置

      Use relative times:用于配置曲线图x轴表示相对时间(测试开始时为0)还是实际系统时间

      Auto-zoom rows for best fit:勾选,则会有上面讲曲线图数值时提到的展示数据自动放大的功

    能,取消勾选则全部展示采集的实际数值

      Limit number of points in row to XX points:勾选后可以设定曲线图展示的采样点数量,我们

    的测试报告会有不同的角色查看,其中一些角色可能不具备也不需要对监控数据的细节理解能力,

    此时我们提供的监控曲线图应该是易读的,如果按照实际的所有采样点来渲染出曲线图,可能会有

    很多偏离趋势的噪点数据,这对于不了解的人来说可能会有很多疑惑,所以当我们有了分析结论,

    最后报告呈现的时候,可以考虑通过调整采样点,来让曲线图更好的展示资源使用趋势,消除其他

    不必要的信息。

      Force maximum Y axis value to XX:不勾选的情况下,插件在描绘曲线图的时候,会根据数

    值大小自动调整Y轴最大值,以达到更佳可读性

      Graph Options:图形选项,控制曲线图的宽度和绘制标记

      下面给大家展示一个某个项目的监控结果:

    4|0四、PerfMon Metrics Collector插件使用过程中可能遇到问题的解决方法

      1.一直报错 ERROR: java.net.ConnectException: Connection refused: connect 

        a.检查ServerAgent有没有在服务器上正常启用

        b.服务端的防火墙是否关闭

        c.默认端口是否被占用

    如果确定是端口被占用,在statAgent目录下运行 java -jar ./CMDRunner.jar --tool PerfMonAgent --udp-port 7777 --tcp-port 7777 更改默认端口。

      2.出现报错 java.lang.NoSuchMethodError: org.apache.jmeter.samplers.SampleSaveConfiguration.setFormatter(Ljava/text/DateFormat;) 

    这个报错是因为所用JMeter版本过高不支持 jp@gc - PerfMon Metrics Collector 插件导致,可下载低版本的JMeter,比如Jmeter3.1版本。

  • 相关阅读:
    c++函数模板
    C++左移运算符重载
    and or bool and a or b 原理解释
    Python的垃圾回收机制
    《C++ 101条建议》学习笔记——第一章快速入门
    在应用中嵌入Python:转
    使用C++扩展Python的功能 转自:http://blog.csdn.net/magictong/article/details/8897568#comments
    python扩展实现方法--python与c混和编程 转自:http://www.cnblogs.com/btchenguang/archive/2012/09/04/2670849.html
    python文件头的#-*- coding: utf-8 -*- 的作用
    Pythhon 字典 key in dict 比 dict.has_key (key)效率高 为什么?
  • 原文地址:https://www.cnblogs.com/fppblog/p/13254637.html
Copyright © 2011-2022 走看看