nmon是分析AIX和Linux性能的免费工具,性能测试经常要用的工具。
一、nmon的安装
1、登录AIX服务器,新建放nmon的目录,mkdir nmonlogs
2、通过FileZilla client或者UE等工具将nmon文件放到nmonlogs目录下,存入之前检查一下磁盘空间,df –g
3、如果nmon文件比较长的话,如nmon_linux_x86_64,运行的时候输入比较麻烦,此时可以重命名一下。运行命令mv nmon_linux_x86_64 nmon
4、修改nmon权限,chmod 755 nmon(755即-rwxr-xr-x)
二、nmon实时监控
1、在nmonlogs路径下运行./nmon(可以使用alias命令alias nmon=’./nmon’,此时只要运行nmon就OK)
2、输入c,进入cpu监控界面。
User% 用户CPU时间,长期大于50%,考虑优化程序算法或进行加速
Sys% 系统CPU时间,太高表示系统调用时间长,如IO操作频繁
Wait% 等待IO CPU时间,太高说明IO等待比较严重,可能由于磁盘大量作随机访问,也可能是磁盘出现瓶颈(块操作)
Idel% 空闲CPU时间,如果idel高但系统反应慢,可能是CPU在等待分配内存,应升级内存
CPU时间=User%+Sys%
User%+Sys%+Wait%=100
3、输入m,进入内存监控界面。
Physical 物理内存
PageSpace 换页空间也常叫虚拟内存
Pages/sec 每秒页面数
In 每秒从交换区写到内存的大小,由磁盘调入内存
Out 每秒写入交换区的内存大小,由内存调入磁盘
Page Faults 当你不能在内存中找到相关的数据时,就会出现Page Fault
FileSystemCache 文件系统缓冲
Numperm 实际占用的物理内存,如图为43.7%。最大可由maxclient得知为90%
一般计算使用的内存为:(Physical %Used+PageSpace %Used)/2
4、输入t,进入进程监控界面。
5、输入d,进入磁盘监控界面
三、nmon持续监控
1、监控命令:./nmon –fT –s 2 –c 100 -F HHYL_20160404_TPS115_91.nmon
-fT 标准格式输出,并输出占用资源最高的进程。
-s 监控频率
-c 监控次数
-F 自命名,场景名称缩写_执行日期_预期TPS_机器名称,加上.nmon是为了一眼就能区分是nmon监控结果
2、注意事项:nmon监控应在场景执行前5分钟启动,在场景执行结束后5分钟停止。2小时以内场景,nmon频率(-s参数)固定为10-30s,8小时稳定性场景,nmon频率(-s参数)固定为60-180s。
3、强制关闭nmon监控
ps –ef |grep nmon 查询到nmon进程的进程号
Kill -9 进程号,杀死nmon进程(上图进程号为27328606)
4、通过FileZilla client或者UE等工具将nmon结果文件从nmonlogs目录下载到本地
5、在本地用nmon analysis.xls工具打开结果文件