压测过程中使用nmon对服务器资源的监控
1、nmon工具的下载和安装:
官网:http://nmon.sourceforge.net/pmwiki.php
下载完成后进行解压,更改权限:chmod 777
2、查看linux系统的版本,再使用对应版本的nmon:
[root@jmeter ~]# cat /etc/*release
CentOS release 6.6 (Final)
LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
CentOS release 6.6 (Final)
CentOS release 6.6 (Final)
可以看出,我的是linux centos6、64位版本,所以使用nmon_x86_64_centos6。
3、压测过程中对CPU、内存、磁盘、网络的监控:
输入c:查看CPU使用情况,主要关注%use,%sys
输入m:查看内存使用情况
Total in MB:总的内存
Free in MB:可用内存
输出n:查看网络
Recv=KB/s:每秒内接收到的数据
Trans=KB/s:每秒内传输的数据
输入d:查看磁盘
输入t:Top Processes,进程信息
监控截图

4、还可以使用后台运行模式进行监控,例如:
[root@jmeter nmon]# ./nmon_x86_64_centos6 -f -s 30 -c 30
[root@jmeter nmon]# ll
total 31572
-rw-r--r--. 1 root root 25608 Sep 13 00:14 jmeter_180913_0014.nmon
可看到自动生成一个nmon文件
参数解释:
-t 输出中包括占用率较高的进程;
-s 每 n 秒采集一次数据。
-c 采集 m 次,即为采集(n*m/60)分钟的数据。
-f 生成的数据文件名中包含文件创建的时间。
-m 生成的数据文件的存放目录。
5、设置一个定时,周一到周五,从早上9点开始监控:
crontab -e
0 9 * * 1,2,3,4,5 /root/benben/nmon/nmon_x86_64_centos6 -f -s 2 -c 180 -m /root/benben/nmondata
6、生成的.nmon文件可以nmon analyser v34a.xls打开
office版本不同,使用的nmon analyser版本也不同
官网地址:http://www.ibm.com/developerworks/aix/library/au-nmon_analyser/
7、抽取:
一般情况下CPU利用率
User%应占70%左右,
Sys%应占30%左右,如果Sys%或Wait%占比等于或超过了User%
则应该关注是什么引起了过多的系统消耗,可能是大量的Disk或Network I/O。
压测过程中使用nmon对服务器资源的监控的更多相关文章
- 压测过程中,获取不到redis连接池,发现redis连接数高
说明:图片截得比较大,浏览器放大倍数看即可(涉及到隐私,打了码,请见谅,如果有疑问,欢迎骚扰). 最近在压测过程中,出现获取不到redis连接池的问题 xshell连接redis服务器,查看连接数,发 ...
- 压测过程中,CPU和内存占用率很高,案例简单分析
Q: 最近公司测试一个接口,数据库采用Mongo 并发策略:并发400个用户,每3秒加载5个用户,持续运行30分钟 数据量:8000条左右 压测结果发现: TPS始终在5左右 ...
- 压测过程中出现ops断崖式下跌原因及排解
压测机器: 100台docker redis集群:16个分片 在开始压测的半个小时中,一直很稳定,ops稳定在20w左右.但是接下来突然ops断崖式下跌,ops降到了3w以下.然后持续一段时间,直至变 ...
- 性能测试:Jmeter压测过程中的短信验证码读取
问题背景 现如今国内的大部分软件或者网站应用,普遍流行使用短信业务,比如登录.注册以及特定的业务通知等. 对于这些业务,在使用Jmeter进行性能测试的过程中,就会需要自动获取和填入短信验证码,否则性 ...
- jmeter进行分布式压测过程与 注意事项
jmeter命令行运行但是是单节点下的, jmeter底层用java开发,耗内存.cpu,如果项目要求大并发去压测服务端的话,jmeter单节点难以完成大并发的请求,这时就需要对jmeter进行分布式 ...
- jmeter压测过程中报java.lang.NoClassDefFoundError: org/bouncycastle/jce/provider/BouncyCastleProvider
由于在java中添加了第三方安全策略文件,具体请看https://www.cnblogs.com/mrjade/p/10886378.html,导致在用jmeter压测过程中会遇到以下错误 解决办法: ...
- ionic 运行过程中动态切换API服务器地址
ionic 运行过程中动态切换API服务器地址 keywords: ionic,phonegap,cordova,网络制式,动态切换,变更,API,服务器地址,$resource,localstora ...
- Jmeter压测过程报错the target server failed to respond
失败事务报错信息如下, Socket closed Non HTTP response code: org.apache.http.NoHttpResponseException (the targe ...
- sysbench压测过程
1.sysbench安装(sysbench1.1.0) [root@master soft]# ls sysbench1.1.0.zip sysbench1.1.0.zip 解压: [root@ma ...
随机推荐
- SQL SERVER-时间戳(timestamp)与时间格式(datetime)互相转换
SQL里面有个DATEADD的函数.时间戳就是一个从1970-01-01 08:00:00到时间的相隔的秒数.所以只要把这个时间戳加上1970-01-01 08:00:00这个时间就可以得到你想要的时 ...
- NGUI之实现连连看小游戏
一,部分游戏规则如下: 二,代码如下: 1. 游戏逻辑核心代码 using System.Collections.Generic; using UnityEngine; namespace Modul ...
- xcodebuild 错误:unknown error -1=ffffffffffffffff
1.security list-keychains 2.security unlock-keychains -p "your password" "your login ...
- Nginx 配置文件优化
user www www; #用户&组 worker_processes auto; #通常是CPU核的数量存储数据的硬盘数量及负载模式,不确定时将其设置为可用的CPU内核数(设置为“auto ...
- 关于babel官网的学习
提起babel,前端er大概都不陌生.但是为什么要有babel呢?解决了什么问题?怎么使用babel呢?注意点在哪?以下就从这几个方面总结一下我关于babel学习的结果吧. 为什么要有babel呢? ...
- ASP.NET页面之间传值的方式之Server.Transfer(个人整理)
Server.Transfer 这个方法相比以前介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写 ...
- WC.exe【C】
gitee传送门!!!(电脑打不开github,多次尝试未果,决定先用gitee存着先) 项目要求 wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写一个命令行程序 ...
- git clone git@github.com:snuglove/ 报错
[root@qc_centos7_5 ~]# git clone git@github.com:snuglove/Job-hunting-related.git Cloning into 'Job-h ...
- laravel blog edit
模板复制create的模板 主要修改的地方 <form action="{{ url('admin/article/'.$article->id) }}" method ...
- class多态
多态代码实现: class Animal(object): def __init__(self, name): # Constructor of the class self.name = name ...