jmeter(五十一)_性能测试中的服务器资源监控与分析
概述
性能测试过程中,对服务器资源的监控是必不可少的。这里的资源又分了两块,windows和linux
linux下监控资源
访问网址http://jmeter-plugins.org/downloads/all/,下载三个文件。其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的,ServerAgent是服务端的。

前两个是jmeter扩展插件,解压后将jar拷贝包到jmeter的lib/ext目录下,最后一个是服务器监控插件,解压到服务器上
将ServerAgent-2.2.1.zip解压后放在需要监控的服务器上,并执行
chmod 777 startAgent.sh 赋权
./startAgent.sh 启动监控

配置端口和ip,端口默认4444
服务器上可以修改默认端口--./startAgent.sh –udp-port 0 –tcp-port XXXX
如果配置正确,但是始终无法监控到服务器,需要考虑 4444 端口是否在服务器防火墙中被禁用!
运行查看结果
jmeter隐藏功能:指定进程号进行监控。需要双击空白的地方,右边会出现三个点。这边可以根据服务器的pid进程号来监控资源
监控CPU
数值都是代表百分比,比如默认配置下在曲线图中看到某个时间的数值是30,即代表此时总的cpu使用时间占比为30%。
两点比较有用的地方值得说明:
1:在Scope区域,可以通过Per Process选项来获取指定进程的CPU使用情况
2:在CPU Cores区域,我们可以选择监控指定的单个Core。
监控Memory
usedperc(默认)和freeperc两项的数值代表与总内存的百分比,其余指标项的数值都是指内存大小,选中对应项,可以看到Metric Unit区域单位配置将变为可用,通常Mb会比较适合观察。同样,也可以选择监控指定进程的数据
监控Disk I/O
queue(默认)的数值代表等待I/O队列长度,reads、writes分别代表每秒处理的读/写次数,readbytes、writebytes顾名思义,代表每秒读/写的数据量,单位同样在Metric Unit区域配置,通常Mb会比较适合观察。如果有挂载多个存储设备,可以在Filesystem Filter区域指定要监控的设备
windows下的资源监控1---jconsole
jdk目录下面有自带的资源监控平台--jconsole.exe
双击jconsole.exe,启动监控平台,可以选择需要监控的服务。可以是本地的tomcat进程,也可以是远程的服务器。这里我选择了监控jmeter进程。
在上方的概览中,我们可以看到堆内存,线程,类,cpu四个监控模块。时间可以自由选择。
在内存选项中,我们可以选择分别监控新生代,老年代,eden,space这些堆内存空间。同时可以手动gc内存。
在线程中,我们可以监控所有已加载的线程,同时一键检测线程死锁。
在类中,我们可以直观的看到各种性能数据。包括jmeter分配的线程池大小。
windows下的资源监控2---jmc工具,可以监控本地和远程机器

jmc的功能类似于jconsole,不过仪表盘式的外观和色彩看起来更加漂亮。
在底部的按钮可以针对堆内存,cpu,线程等进行性能诊断

windows下的资源监控2---jvisualvm工具,可以监控本地和远程机器


jvisualvm的功能更加强大一些,除了常规的数据监控之外,还可以对线程进行dump(只能针对本地,不能对远程服务进行dump)

jdk自带的监控工具是丰富多彩的,我们可以根据自己的需求去选择不同的工具。
内存瓶颈分析
内存资源成为系统性能的瓶颈的征兆 :
很高的换页率 (high pageout rate);
进程进入不活动状态 ;
交换区所有磁盘的活动次数可高 ;
可高的全局系统 CPU 利用率 ;
内存不够出错 (out of memory errors)
cpu瓶颈分析
CPU 资源成为系统性能的瓶颈的征兆 :
很慢的响应时间 (slow response time)
CPU 空闲时间为零 (zero percent idle CPU)
过高的用户占用 CPU 时间 (high percent user CPU)
过高的系统占用 CPU 时间 (high percent system CPU)
长时间的有很长的运行进程队列 (large run queue size sustained over time)
jmeter(五十一)_性能测试中的服务器资源监控与分析的更多相关文章
- Jmeter(五十)_性能测试模拟真实场景下的用户操作
概述 我们在做性能测试的时候,不同的视角看到的结果都不一样. 例如响应时间 用户通过客户端向服务端发出请求的时间为: T1服务端接收到请求,处理该请求的时间为:T2服务端返回数据给客户端时间为: T3 ...
- JMeter性能测试-服务器资源监控插件详解
零.引言 我们对被测应用进行性能测试时,除了关注吞吐量.响应时间等应用自身的表现外,对应用运行所涉及的服务器资源的使用情况,也是非常重要的方面,通过实时监控,可以准确的把握不同测试场景下服 ...
- (转)JMeter性能测试-服务器资源监控插件详解
零.引言 我们对被测应用进行性能测试时,除了关注吞吐量.响应时间等应用自身的表现外,对应用运行所涉及的服务器资源的使用情况,也是非常重要的方面,通过实时监控,可以准确的把握不同测试场景下服务器资源消耗 ...
- 服务器资源监控插件(jmeter)
零.引言 我们对被测应用进行性能测试时,除了关注吞吐量.响应时间等应用自身的表现外,对应用运行所涉及的服务器资源的使用情况,也是非常重要的方面,通过 实时监控,可以准确的把握不同测试场景下服务器资源消 ...
- Jmeter(四十一)_图片爬虫
今天教大家用元件组合,做一个网页图片爬虫. 需要用到的元件:循环控制器+计数器+xpath提前器+函数嵌套+beanshell代码 首先我们确定一下要爬取的图片网站:https://dp.pconli ...
- Jmeter(五十一) - 从入门到精通高级篇 - jmeter之运动战(详解教程)
1.简介 运动战是一种军事作战方式,依托较大的作战空间来换取时间移动兵力包围敌方,以优势兵力速战速决,运动战的运用归为这样一段话"避敌主力,诱敌深入,集中优势兵力逐个击破".今天宏 ...
- 软件测试_Loadrunner_性能测试_服务器资源监控
使用Loadrunner进行Windows服务器性能监控 将装有Loadrunner的机器叫做监控端,被监控资源的服务器叫做被监控端 一.前置环境设置 1. 设置被监控端管理员账户可用:我的电脑右键- ...
- Jmeter压力测试简单教程(包括服务器状态监控)
前段时间公司需要对服务器进行压力测试,包括登录前的页面和登录后的页面,主要目的是测试负载均衡的实现效果.不知道是不是因为Jmeter不如loadRunner火爆还是什么,网上关于Jmeter的资料有很 ...
- 2. Jmeter压力测试简单教程(包括服务器状态监控) (转)
转自:https://blog.csdn.net/cbzcbzcbzcbz/article/details/78023327 前段时间公司需要对服务器进行压力测试,包括登录前的页面和登录后的页面,主要 ...
随机推荐
- Mybatis 原理分析
对于入门程序的流程分析 使用过程 读配置文件 读取配置文件时绝对路径和相对路径(web工程部署后没有src路径)都有一定问题,实际开发中一般有两种方法 使用类加载器,它只能读取类路径的配置文件 使用S ...
- 女性长期没有"恩爱",会出现这4个后果?提醒:频率最好能在这个数
一直以来,很多人认为:男性性欲比女性强! 其实:因人而异! 但不管怎么说,“性”话题在如今社会中已经不再成为隐晦谈资. 越来越多的人,可以把此话题拿到桌面上各抒己见. 总归,“性”是我们探索自我的一种 ...
- Springboot vue.js html 跨域 前后分离 Activiti6 shiro 权限
官网:www.fhadmin.org 特别注意: Springboot 工作流 前后分离 + 跨域 版本 (权限控制到菜单和按钮) 后台框架:springboot2.1.2+ activiti6.0 ...
- 36、v-charts一些基本配置修改
例如柱状图: <ve-histogram :settings="chartSettings" :extend="chartExtend" :grid=&q ...
- PostgreSql那点事(文件读取写入、命令执行的办法)
• 2013/07/9 作者: admin PostgreSql那点事(文件读取写入.命令执行的办法) 今天无意发现了个PostgreSQL环境,线上学习了下,一般的数据注射(读写数据库)差异不大,不 ...
- Java面试通关要点 汇总集【最终版】
本文转载自公众号:服务端思维,阅读大约需要7分钟.梁兄的知识储备很丰富,组织的知识星球里也是干货十足,平常还会有技术研习等活动,欢迎关注. 首先,声明下,以下知识点并非阿里的面试题.这里,笔者结合自己 ...
- 对List集合中的元素进行排序
原文:http://blog.csdn.net/veryisjava/article/details/51675036 Collections对List集合中的数据进行排序 有时候需要对集合中的元素按 ...
- 自制微擎AI面相识别算术阈值
有时在朋友圈或其他地方会看到一些AI面相的分享链接或小程序,不是面相算命的有多吸引人,而是前面有"AI"两个字母.于是我就上网找了一下相关代码,发现了一个微擎系统的面相模块.下载下 ...
- django应用之corsheaders[跨域设置]
安装 pip install django-cors-headers 注册应用 INSTALLED_APPS = ( ... 'corsheaders', ... ) 中间层设置 MIDDLEWARE ...
- BFS (1)算法模板 看是否需要分层 (2)拓扑排序——检测编译时的循环依赖 制定有依赖关系的任务的执行顺序 djkstra无非是将bfs模板中的deque修改为heapq
BFS模板,记住这5个: (1)针对树的BFS 1.1 无需分层遍历 from collections import deque def levelOrderTree(root): if not ro ...