服务器性能测试工具 ---- nmon
一、下载nmon
根据CPU的类型选择下载相应的版本:
http://nmon.sourceforge.net/pmwiki.php?n=Site.Download
wget http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip
方法1:
|
1
2
3
4
|
[root@mululu ~]# cd /opt[root@mululu opt]# mkdir nmon[root@mululu opt]# cd nmon[root@mululu nmon]#wget <a href="http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip/download">http://sourceforge.net/projects/nmon/files/download/nmon_x86_12a.zip</a> |
方法2:
点击第一个链接,下载列表中的nmon_linux_14i_newer_Linux_versions.tar.gz,解压后里边有很多版本的nmon,我用的是nmon_linux_x86_64,亲测可用。根据linux系统版本,使用其他版本可能会提示glibc版本太低,需要安装更高版本的glibc,遇到这种问题请参考http://blog.csdn.net/cpplang/article/details/8462768。
直接在window中将解压好的nmon_linux_x86_64通过sftp上传到要监控的linux系统中对应目录下
二、初始化工具
[root@lampard nmon]# unzip nmon_x86_12a.zip
Archive: nmon_x86_12a.zip
inflating: nmon_x86_rhel45
inflating: nmon_x86_rhel52
inflating: nmon_x86_sles9
inflating: nmon_x86_sles10
inflating: nmon_x86_ubuntu810
inflating: nmon_x86_fedora10
inflating: nmon_x86_opensuse10
[root@lampard nmon]# ls
nmon1 nmon_x86_fedora10 nmon_x86_rhel45 nmon_x86_sles10 nmon_x86_ubuntu810
nmon_x86_12a.zip nmon_x86_opensuse10 nmon_x86_rhel52 nmon_x86_sles9
[root@lampard nmon]# mv nmon_x86_ubuntu810 nmon #重命名nmon
[root@lampard nmon]# chmod +x nmon #授权命令
[root@lampard nmon]#ls
nmon nmon1 nmon_x86_12a.zip nmon_x86_fedora10 nmon_x86_opensuse10 nmon_x86_rhel45 nmon_x86_rhel52 nmon_x86_sles10 nmon_x86_sles9
然后直接运行 nmon 即可,直接运行nmon可以实时监控系统资源的使用情况,执行下面的步骤可以展现一段时间系统资源消耗的报告。
下面是直接执行nmon命令实时监控系统资源消耗情况的截图:
[root@lampard nmon]#./nmon


CPU、内存、磁盘和网络的消耗情况都被很直观的展现出来。
按键“C”可以查看CPU相 关信息;
按键“D”可以查看磁盘信息;
按键“T”可以查看系统的进程信息;
“M”对应内存、“N”对应网络等等;
完整的快捷键对应内容可以通过帮助(按键 “H”)查看。
可以显示Linux系统CPU、内存、进程信息,包括了CPU的用户、系统、等待和空闲状态值,可用内存、缓存大小以及进程的CPU消耗等详细指标。该种方式显示信息实时性强,能够及时掌握系统承受压力下的运行情况,每颗CPU利用率是多少、内存使用多少、网络流量多少、磁盘读写……这些数据均是实时刷新,一目了然。
三、生成nmon报告
1).采集数据:
# ./nmon -s10 -c60 -f -m /home/
参数解释:
-s10 每 10 秒采集一次数据。
-c60 采集 60 次,即为采集十分钟的数据。
-f 生成的数据文件名中包含文件创建的时间。
-m 生成的数据文件的存放目录。
这样就会生成一个 nmon 文件,并每十秒更新一次,直到十分钟后。
生成的文件名如: lampard_190103_1506.nmon ,"lampard" 是这台主机的主机名。
nmon -h 查看更多帮助信息
---------------------------------------
---------------------------------------
!!!可能会遇到下面问题

解决方式:

先看看这个命令属于哪个软件包:
[root@lampard ~]# yum provides */lsb_release
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.psychz.net
* epel: mirrors.solfo.com
* extras: mirror.san.fastserv.com
* updates: mirror.lax.hugeserver.com
base/filelists_db | 5.1 MB 00:00
epel/filelists_db | 7.8 MB 00:00
extras/filelists_db | 31 kB 00:00
updates/filelists_db | 614 kB 00:00
vz-base/filelists | 825 B 00:00
vz-updates/filelists | 3.0 kB 00:00
redhat-lsb-core-4.0-7.el6.centos.i686 : LSB base libraries support for CentOS
Repo : base
Matched from:
Filename : /usr/bin/lsb_release
dkms-2.2.0.3-28.git.7c3e7c5.el6.noarch : Dynamic Kernel Module Support Framework
Repo : epel
Matched from:
Filename : /usr/lib/dkms/lsb_release
dkms-2.2.0.3-26.el6.noarch : Dynamic Kernel Module Support Framework
Repo : installed
Matched from:
Filename : /usr/lib/dkms/lsb_release
redhat-lsb-core-4.0-7.el6.centos.i686 : LSB base libraries support for CentOS
Repo : installed
Matched from:
Filename : /usr/bin/lsb_release 可以看出,属于redhat-lsb这个包,那么接着使用yum安装这个包:
[root@lampard ~]# yum install -y redhat-lsb
[root@lampard ~]# lsb_release -r

2).生成报表:
下载 nmon analyser (生成性能报告的免费工具):
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power%20Systems/page/nmon_analyser
将之前生成的 nmon 数据文件传到 Windows 机器上,用 Excel 打开分析工具 nmon analyser v33C.xls 。点击 Excel 文件中的 "Analyze nmon data" 按钮,选择 nmon 数据文件,这样就会生成一个分析后的结果文件: hostname_090824_1306.nmon.xls ,用 Excel 打开生成的文件就可以看到结果了。
!! 如果宏不能运行,需要做以下操作:
工具 -> 宏 -> 安全性 -> 中,然后再打开文件并允许运行宏。
下面是在测试环境中生成的nmon报告截图:

红色区域为不同指标的分析报告。
3).定时任务
除配合性能测试的短期监控,也可以实现对系统的定期监控,作为运营维护阶段的参考。定期监控实现如下:
1) 执行命令:# crontab –e #定时任务命令
2) 在最后一行添加如下命令:
0 8 * * 1,2,3,4,5 /nmon/nmon_x86_rhel5 -f -N -m /nmon/log -s 30 -c 1200
表示:
周一到周五,从早上08点开始,监控10个小时(到18:00整为止),输出到/nmon/log
自动按天采集数据:
在 crontab 中增加一条记录:
0 0 * * * root nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1
300*288=86400 秒,正好是一天的数据。
四、停止监控
nmon运行本身是会消耗系统资源,如需关闭nmon,直接kill掉
# ps -ef | grep nmon (得到pid)
# kill -9 pid (安全kill)
-----------------------------------------------------------------
!!!实际应用时遇到“nmon analyser 运行时错误 13 类型不匹配”
解决办法: 将本机系统时间格式设置为:yyyy-MM-dd。电脑的计算机名不能有特殊字符。
-----------------------------------------------------------------
服务器性能测试工具 ---- nmon的更多相关文章
- 新一代服务器性能测试工具Gatling
新一代服务器性能测试工具Gatlinghttp://automationqa.com/forum.php?mod=viewthread&tid=2898&fromuid=2
- Gatling新一代压力测试工具,新一代服务器性能测试工具Gatling
Gatling新一代压力测试工具新一代服务器性能测试工具Gatlinghttp://www.infoq.com/cn/articles/new-generation-server-testing-to ...
- Http服务器性能测试工具ab..
-A auth-username:password 对服务器提供BASIC认证信任.用户名和密码由一个:隔开,并以base64编码形式发送,无论服务器是否需要(即,是否发送了401认证需求代码),此字 ...
- Web Service 性能测试工具比较
背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力(请求数/秒).以微信服务器为例,每个用户用独立的登录token,做各种操作, ...
- Benchmark Web App 性能瓶颈分析与性能测试工具的使用方法总结
主要分为以下几个要素的指标: Disk IO . CPU . mem . Net . MySQL Web性能测试工具: 客户端 服务器端: 服务器性能测试工具: 服务器性能瓶颈分析工具: ab, si ...
- 性能测试工具 Web Service 性能测试工具比较
[转自]https://testerhome.com/topics/3003 背景 希望选择一款Web Service性能测试工具,能真实模拟大量用户访问网站时的请求,从而获取服务器当前的请求处理能力 ...
- 【http_load】http_load性能测试工具使用详解
1.什么是http_loadhttp_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能. 2.http_load的安装1)下载地址wge ...
- web性能测试工具——http_load
http_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能. http_load是基于linux.unix平台的一种性能测工具 它以并行 ...
- linux服务器性能检测工具nmon使用
今天介绍一款linux系统服务器性能检测的工具-nmon及nmon_analyser (生成性能报告的免费工具),亲测可用. 一.介绍 nmon 工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并 ...
随机推荐
- 大话RabbitMQ 基础入门
----------写在前面---------- 近些年微服务越来越火,让我也忍不住想去一窥微服务究竟,讲到微服务,就离不开分布式,而分布式,也离不开消息队列,在消息队列中,RabbitMQ可以说是比 ...
- 各位情人节快乐, Python帮忙撒狗粮, 我连夜做了这个程序!
阅读本文大概需要5分钟 码农的情人节 一年一度的情人节要来啦,这个浪漫温馨的节日,走在大街小巷,走在地铁里,走在商场里,走在电影院,姑娘们手里几乎都捧着一束花,心里都是乐滋滋的,一脸幸福的样子,忽然想 ...
- 【ShoppingWebCrawler】-基于Webkit内核的爬虫蜘蛛引擎概述
写在开头 在各个电商平台发展日渐成熟的今天.很多时候,我们需要一些平台上的基础数据.比如:商品分类,分类下的商品详细,甚至业务订单数据.电商平台大多数提供了相应的业务接口.允许ISV接入,用来扩展自身 ...
- BZOJ_2956_模积和_数学
BZOJ_2956_模积和_数学 Description 求∑∑((n mod i)*(m mod j))其中1<=i<=n,1<=j<=m,i≠j. Input 第一行两个数 ...
- HTTP 和 WebSocket的区别
有关http和WebSocket 的区别网上有很多的质料. 个人在此仅仅是记录以下自己的学习心得,自己的理解. 1. http协议是用在应用层的协议,他是基于tcp协议的,http协议建立链接也必须要 ...
- python3——模块
今天去听一个关于创业的讲座,心疼自己在那个地方站了 一个多小时(QAQ)我是心疼自己傻呀! 手机打王者之后就没有电了,一直站在那儿! 不过最后还是结束了,以后你们也会有很多讲座的,希望学弟学妹好好听讲 ...
- 分布式缓存技术redis学习系列
分布式缓存技术redis学习系列(一)--redis简介以及linux上的安装以及操作redis问题整理 分布式缓存技术redis学习系列(二)--详细讲解redis数据结构(内存模型)以及常用命令 ...
- 基于Java实现红黑树的基本操作
首先,在阅读文章之前,我希望读者对二叉树有一定的了解,因为红黑树的本质就是一颗二叉树.所以本篇博客中不在将二叉树的增删查的基本操作了,需要了解的同学可以到我之前写的一篇关于二叉树基本操作的博客:htt ...
- 【Python3爬虫】你会怎么评价复仇者联盟4?
一.写在前面 最近复仇者联盟4正在热映中,很多人都去电影院观看了电影,那么对于这部电影,看过的人都是怎么评价的呢?这时候爬虫就可以派上用场了! 二.主要思路 首先打开豆瓣电影,然后进入复仇者联盟4的详 ...
- 安卓开发常用icon/png图样
平时开发当中会用到很多png图样,但是自己又不太会做,因此做好的办法就是直接在网上下载下来用了,这里给大家推荐一个比较好用的网站,免费的,有很多好的png可以直接下载下来使用. http://www. ...