性能测试时,我们的关注点有两部分
1 服务本身:并发 响应时间 QPS
2 服务器的资源使用情况:cpu memory I/O disk等
JMeter的plugins插件可以实现对"二"的监控,具体操作步骤如下(主要记录我的实践过程):
说明:我的jmeter版本是2.13
一 下载插件
1 访问网址http://jmeter-plugins.org/downloads/all/,下载三个文件。其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的,ServerAgent是服务端的。
2 解压客户端的两个文件,进入其路径JMeterPlugins-Extras(Standard)-1.3.1\lib\ext,复制JmeterPlugins-Extras.jar(JmeterPlugins-Standard.jar)两个文件,放到JMeter客户端的lib/ext文件夹中,打开JMeter,可在监听器中看到Permon Metrics Collector,客户端配置成功。
3 将ServerAgent-2.2.1.jar上传到被测服务器,解压,进入目录,Windows环境,双击ServerAgent.bat启动;linux环境执ServerAgent.sh启动,默认使用4444端口,出现如下情况即服务端成功:
二 测试使用情况
1 ServerAgent启动的校验
a 在笔记本电脑打开telnet监听(控制面板-程序-打开或关闭Windows功能-telnet客户端勾选打开)
b cmd进入命令框,输入如下内容:
telnet yourip 4444 #连接ServerAgent test #发送test进行测试 exit #退出,即断开连接
c 观察server端是否有接收到消息,出现如下情况说明ServerAgent打开成功
[[email protected] ~]# /opt/soft/ServerAgent-2.2.1/startAgent.sh INFO 2016-02-18 10:52:51.749 [kg.apc.p] (): Binding UDP to 4444 INFO 2016-02-18 10:52:52.749 [kg.apc.p] (): Binding TCP to 4444 INFO 2016-02-18 10:52:52.754 [kg.apc.p] (): [email protected] Agent v2.2.0 started INFO 2016-02-18 10:56:55.198 [kg.apc.p] (): Accepting new TCP connection #成功连接 INFO 2016-02-18 10:57:00.830 [kg.apc.p] (): Yep, we received the ‘test‘ command #接收到test消息 INFO 2016-02-18 10:57:05.185 [kg.apc.p] (): Client disconnected #断开连接
2 Jmeter客户端的监听测试
a 打开JMeter.bat,添加监听器Permon Metrics Collector-Add Row添加一行monitor配置(修改Host/IP为测试IP)-运行-观察server日志即chart图标内容。
ServerAgent端的日志:INFO 2016-02-18 11:02:14.197 [kg.apc.p] (): Accepting new TCP connection INFO 2016-02-18 11:02:14.243 [kg.apc.p] (): Yep, we received the ‘test‘ command INFO 2016-02-18 11:02:14.246 [kg.apc.p] (): Starting measures: cpu: INFO 2016-02-18 11:02:14.402 [kg.apc.p] (): Client disconnected
b 运行jmeter时,成功连接然后立刻断开了,并没有获取我们想要的数据。猜想需要一个时间控制的元器件,使其能够获取一段时间的数据。
i 步骤:添加线程组(不添加发送请求),设置循环次数为永远,点击运行。
结果:成功连接然后立刻断开
ii 添加线程组,设置循环次数为"用玄";为线程组任意添加一个Sampler(并不设置参数);添加一个PerfMon Metrics Collector监听器;点击运行。
结果:成功获取chart图,点击stop,即结束监听数据。全部配置图如下
三 问题
1 JMeter应该有其他元器件可以达到让它持续的作用,到时候再找