首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
50 篇文章
1
Jmeter(一) - 从入门到精通 - 环境搭建(详解教程)
2
Jmeter(二) - 从入门到精通 - 创建测试计划(Test Plan)(详解教程)
3
Jmeter(三) - 从入门到精通 - 测试计划(Test Plan)的元件(详解教程)
4
Jmeter(四) - 从入门到精通 - 创建网络测试计划(详解教程)
5
Jmeter(五) - 从入门到精通 - 创建网络计划实战和创建高级Web测试计划(详解教程)
6
Jmeter(六) - 从入门到精通 - 建立数据库测试计划(详解教程)
7
Jmeter(七) - 从入门到精通 - 建立数据库测试计划实战<MySQL数据库>(详解教程)
8
Jmeter(八) - 从入门到精通 - JMeter配置元件(详解教程)
9
Jmeter(九) - 从入门到精通 - JMeter逻辑控制器 - 上篇(详解教程)
10
Jmeter(十) - 从入门到精通 - JMeter逻辑控制器 - 中篇(详解教程)
11
Jmeter(十一) - 从入门到精通 - JMeter逻辑控制器 - 下篇(详解教程)
12
Jmeter(十二) - 从入门到精通 - JMeter逻辑控制器 - 终篇(详解教程)
13
Jmeter(十三) - 从入门到精通 - JMeter定时器 - 上篇(详解教程)
14
Jmeter(十四) - 从入门到精通 - JMeter定时器 - 下篇(详解教程)
15
Jmeter(十五) - 从入门到精通 - JMeter导入自定义的Jar包(详解教程)
16
Jmeter(十六) - 从入门到精通 - JMeter前置处理器(详解教程)
17
Jmeter(十七) - 从入门到精通 - JMeter后置处理器 -上篇(详解教程)
18
Jmeter(十八) - 从入门到精通 - JMeter后置处理器 -下篇(详解教程)
19
Jmeter(十九) - 从入门到精通 - JMeter监听器 -上篇(详解教程)
20
Jmeter(二十) - 从入门到精通 - JMeter监听器 -下篇(详解教程)
21
Jmeter(二十一) - 从入门到精通 - JMeter断言 - 上篇(详解教程)
22
Jmeter(二十二) - 从入门到精通 - JMeter
23
Jmeter(二十三) - 从入门到精通 - JMeter函数 - 上篇(详解教程)
24
Jmeter(二十四) - 从入门到精通 - JMeter函数 - 中篇(详解教程)
25
Jmeter(二十五) - 从入门到精通 - JMeter函数 - 下篇(详解教程)
26
Jmeter(二十六) - 从入门到精通 - 搭建开源论坛JForum(详解教程)
27
Jmeter(二十七) - 从入门到精通 - Jmeter Http协议录制脚本(详解教程)
28
Jmeter(二十八) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy1(详解教程)
29
Jmeter(二十九) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy2(详解教程)
30
Jmeter(三十) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy3(详解教程)
31
Jmeter(三十一) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy4(详解教程)
32
Jmeter(三十二) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy5(详解教程)
33
Jmeter(三十三) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy6(详解教程)
34
Jmeter(三十四) - 从入门到精通进阶篇 - 参数化(详解教程)
35
Jmeter(三十五) - 从入门到精通进阶篇 - 关联(详解教程)
36
Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程)
37
Jmeter(三十七) - 从入门到精通进阶篇 - 输出HTML格式的性能测试报告(详解教程)
38
Jmeter(三十八) - 从入门到精通进阶篇 - 命令行运行JMeter详解(详解教程)
39
Jmeter(三十九) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 上篇(详解教程)
40
Jmeter(四十) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 中篇(详解教程)
41
Jmeter(四十一) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 下篇(详解教程)
42
Jmeter(四十二) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 -番外篇(详解教程)
43
Jmeter(四十三) - 从入门到精通高级篇 - Jmeter之IP伪装和欺骗(详解教程)
44
Jmeter(四十四) - 从入门到精通高级篇 - Jmeter远程启动(本地运行+远程运行)(详解教程)
45
Jmeter(四十五) - 从入门到精通高级篇 - Jmeter之网页爬虫-上篇(详解教程)
46
Jmeter(四十六) - 从入门到精通高级篇 - Jmeter之网页图片爬虫-下篇(详解教程)
47
Jmeter(四十七) - 从入门到精通高级篇 - 分布式压测部署之负载机的设置(详解教程)
48
Jmeter(四十八) - 从入门到精通高级篇 - Jmeter监控服务器性能(详解教程)
49
Jmeter(四十九) - 从入门到精通高级篇 - jmeter使用监视器结果监控tomcat性能(详解教程)
50
Jmeter(五十) - 从入门到精通高级篇 - jmeter 之模拟弱网进行测试(详解教程)

Jmeter(四十八) - 从入门到精通高级篇 - Jmeter监控服务器性能(详解教程)

1.简介

JMeter是一款压力、接口等等的测试工具,Jmeter也可以像loadrunner一样监控服务器CPU、内存等性能参数,用来监控服务器资源使用情况,不过需要安装一些插件。JMeter正常自带可以通过Tomcat的/manager/status来监控服务资源使用情况。这种情况只能监控Tomcat支持的资源使用部分。 通过本文宏哥主要来说一下如何通过JMeter插件来监控服务器CPU、内存(Memory)、磁盘(DisKs I/O)、网络(NetWork I/O)等相关资源。

2.下载Jmeter插件

既然监控需要一些插件,那么宏哥就将准备工作做好了,下载安装需要的插件。 JMeter 插件网址:https://jmeter-plugins.org/downloads/old/

其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的(Jmeter插件),ServerAgent是服务端的(放在服务器中的)。

3.解压并安装

1、解压客户端的两个文件,进入其路径JMeterPlugins-Extras(Standard)-1.3.1\lib\ext,复制JmeterPlugins-Extras.jar(JmeterPlugins-Standard.jar)两个文件,放到你安装JMeter客户端的lib/ext文件夹中,打开JMeter,可在监听器中看到Permon Metrics Collector,客户端配置成功。如下图所示:

2、将ServerAgent-2.2.1.jar上传到被监控的服务器,待用。如下图所示:

Windows服务器:

Linux服务器:

4.监控

1、启动客户端的Jmeter,然后添加jp@gc - PerfMon Metrics Collector监听器,并增加你要监控的参数。如下图所示:

2、解压刚刚复制到服务器待用的压缩包,进入目录,Windows环境,双击ServerAgent.bat启动;linux环境执ServerAgent.sh启动,默认使用4444端口,出现如下情况即服务端成功。如下图所示:

Windows环境:

Linux环境:

3、运行Jmeter-观察server日志即chart图标内容,如下图所示:

4、ServerAgent端的日志,如下图所示:

Windows服务器:

Linux服务器:

5、从第三步和第四步可以看出接收了一个TCP的链接,没有反应卡住不懂了,宏哥记得以前做的时候不是这个样子的,后来查看客户端的Jmeter发现报错了,如下图所示:

6、报错信息:java.lang.NoSuchMethodError: org.apache.jmeter.samplers.SampleSaveConfiguration.setFormatter(Ljava/text/DateFormat;)V ,查找资料发现是因为Jmeter的版本太高了,不支持其中一个方法了。jmeter版本太高,setFormatter方法在3.1版本后不支持。但是插件没有高版本,只能卸载5.1重装3.1。重装后成功。再次查看ServerAgent端的日志,如下图所示:

代码语言:javascript
复制
INFO    2021-05-28 09:27:46.540 [kg.apc.p] (): Accepting new TCP connection  #成功连接
INFO    2021-05-28 09:27:46.543 [kg.apc.p] (): Yep, we received the 'test' command   #接收到test消息
INFO    2021-05-28 09:27:46.547 [kg.apc.p] (): Starting measures: cpu:
INFO    2021-05-28 09:27:46.801 [kg.apc.p] (): Client disconnected   #断开连接

7、从上边的日志信息可以看出,运行jmeter时,成功连接然后立刻断开了,并没有获取我们想要的数据。猜想需要一个时间控制的元器件,使其能够获取一段时间的数据。

i 步骤:添加线程组(不添加发送请求),设置循环次数为永远,点击运行。 结果:成功连接然后立刻断开。全部配置如下图所示:

ServerAgent端的日志,如下图所示:

代码语言:javascript
复制
INFO    2021-05-28 09:37:00.520 [kg.apc.p] (): Accepting new TCP connection
INFO    2021-05-28 09:37:00.521 [kg.apc.p] (): Yep, we received the 'test' command
INFO    2021-05-28 09:37:00.523 [kg.apc.p] (): Starting measures: cpu:
INFO    2021-05-28 09:37:00.653 [kg.apc.p] (): Client disconnected

Jmeter客户端配置,如下图所示:

chart图,如下图所示:

ii 添加线程组,设置循环次数为"永远";为线程组任意添加一个Sampler(并不设置参数);添加一个PerfMon Metrics Collector监听器;点击运行。 结果:成功获取chart图,点击stop,即结束监听数据。全部配置如下图所示:

ServerAgent端的日志,如下图所示:

代码语言:javascript
复制
INFO 2021-05-28 10:02:57.150 [kg.apc.p] (): Accepting new TCP connection
INFO    2021-05-28 10:02:57.152 [kg.apc.p] (): Yep, we received the 'test' command
INFO    2021-05-28 10:02:57.154 [kg.apc.p] (): Starting measures: cpu:  network i/o:    disks i/o:
INFO    2021-05-28 10:03:05.465 [kg.apc.p] (): Client disconnected

Jmeter客户端配置,如下图所示:

chart图,如下图所示:

5.小结

1、运行 ServerAgent-2.2.1\bin\startAgent.bat(Linux使用startAgent.sh)(默认端口为4444,也可以参数指定 –udp-port 4445 –tcp-port 4445)

2、常用组件简要介绍: ① jp@gc - Bytes Throughput Over Time:不同时间吞吐量展示(图表) 聚合报告里,Throughput是按请求个数来展示的,比如说1.9/sec,就是每s发送1.9个请求;而这里的展示是按字节Bytes来展示的图表 ② jp@gc - Composite Graph: 混合图表 在它的Graphs里面可以设置多少个图表一起展示,它可以同时展示多个图表 ③ jp@gc - Hits per Second:每秒点击量 ④ jp@gc - PerfMon Metrics Collector:服务器性能监测控件,包括CPU,Memory,Network,I/O等等 ⑤ jp@gc - Reponse Latencies Over Time:记录客户端发送请求完成后,服务器端返回请求之前这段时间 ⑥ jp@gc - Reponse Times Distribution: 显示测试的响应时间分布,X轴显示由时间间隔分组的响应时间,Y轴包含每个区间的样本数 ⑦ jp@gc - Transactions per Second: 每秒事务数,服务器每秒处理的事务数

  最后为了省去大家查找和下载软件的时间,小伙伴或者童鞋们微信搜索“北京宏哥”,关注宏哥公众号,进入公众号发送“jmeter监控”,获取Jmeter服务器监控全家桶相关软件和插件。

下一篇
举报
领券