在性能测试过程中,对服务端的各项资源使用情况进行监控是很重要的一环。这篇博客,介绍下服务端监控工具:nmon的使用方法。。

一、认识nmon

1、简介

nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面,

并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果。

2、nmon可监控的数据类型

内存使用情况

磁盘适配器

文件系统中的可用空间

CPU使用率

页面空间和页面速度

异步I/O,仅适用于AIX

网络文件系统(NFS)

磁盘I/O速度和读写比率

服务器详细信息和资源

内核统计信息

消耗资源最多的进程

运行队列信息

3、特点

①、占用系统资源少(一般不到2%)

②、功能强大(监控数据类型全面)

③、结合grafana之类的仪表图,可以更直观的实时展示所监控的数据

④、移植性、兼容性较好

二、检查安装环境

# 查看操作系统的信息
uname -a
# 查看linux发行版本
lsb_release -a

如下图,我的操作系统为64位,linux版本为CentOS7.4版本:

[root@izbp1jbg0c2bbcmcba0exoz ~]# uname -a
Linux izbp1jbg0c2bbcmcba0exoz 3.10.0-693.2.2.el7.x86_64 #1 SMP Tue Sep 12 22:26:13 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@izbp1jbg0c2bbcmcba0exoz ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core

三、nmon下载安装

1、官方地址http://nmon.sourceforge.net/pmwiki.php?n=Site.Download

根据我的操作系统和linux版本,选择对应的支持版本,如下:

2、下载方式

①、下载到本地,通过FTP上传到服务器

②、命令行 wget http://sourceforge.net/projects/nmon/files/nmon16e_mpginc.tar.gz

3、安装

下载完成后,执行以下命令:

# 新建一个nmon文件夹
mkdir nmon
# 解压
tar xvfz nmon16e_mpginc.tar.gz
# 改名
mv nmon_x86_64_centos7 /root/nmon
# 给工具授权
chmod -x nmon 777

四、运行nmon

完成上面的操作后,执行 ./nmon 命令,出现如下界面,说明安装成功:

常用快捷命令说明:

# c
查看CPU相关信息
# m
查看内存相关信息
# d
查看磁盘相关信息
# n
查看网络相关信息
# t
查看相关进程信息
# h
查看帮助相关信息

输入如上几种命令,结果如下图显示:

五、采集数据

nmon通过命令行启动监控,捕获服务器的各项数据,命令如下:

./nmon -ft -s 10 -c 60 -m /root/nmon
# 参数说明
-f 监控结果以文件形式输出,默认机器名+日期.nmon格式
-F 指定输出的文件名,比如test.nmon
-s 指的是采样的频率,单位为毫秒
-c 指的是采样的次数,即以上面的采样频率采集多少次
-m 指定生成的文件目录 

PS:一般来说不建议对稳定性测试使用nmon监控,因为生成的nmon文件超过10M时,分析工具会由于内存不足导致报错。

如果必须进行的话,建议加大采样频次,降低采样次数(低于330次)。

六、监控结果分析

1、下载分析工具

nmon监控捕获的信息,一般用nmon_analyser来进行分析。nmon_analyser 由IBM提供, 使用excel的宏命令分析加载生成excel图表,展示资源占用的各项信息。

官网地址:nmon_analyser

下载你需要的版本,然后解压,解压后出现如下2个文件:

2、使用nmon analyser工具

打开.xlsm文件,点击Analyze nmon data,打开你需要进行分析的nmon监控文件:

PS:如果提示分析文件不可用,从“工具-宏-安全性”启动宏,然后再次打开文件,即可使用该分析文件。

3、生成各种图表数据

通过分析工具生成的监控数据结果如下图:

红色标注区域为采集的监控数据,选择自己需要的类型(比如cpu),然后筛选对应的服务Pid(比如1314),选择对应的数据类型(比如CPU使用率占比),

通过excel提供的各种图形生成工具,生成直观的分析结果图。比如:

以上,即监控工具nmon的介绍和基本使用方法,更多的应用方式,请参考官网说明或自行探索。。。

转载至:https://www.cnblogs.com/imyalost/p/9873621.html

(转)服务端监控工具:nmon的使用的更多相关文章

  1. 服务端监控工具Nmon使用方法

    一.认识nmon 1.简介 nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面, 并且能输出结果到文件中,然 ...

  2. 服务端监控工具:Nmon使用方法

    在性能测试过程中,对服务端的各项资源使用情况进行监控是很重要的一环.这篇博客,介绍下服务端监控工具:nmon的使用方法... 一.认识nmon 1.简介 nmon是一种在AIX与各种Linux操作系统 ...

  3. 服务端tomcat的简单监控

    由于线上对tomcat监控处于失控的状态(只能通过跳转,简单地jstack/jstat进行监控),故需要针对tomcat快速查看其运行状态   Tomcat-manager   在tomcat/web ...

  4. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  5. 关于如何提高Web服务端并发效率的异步编程技术

    最近我研究技术的一个重点是java的多线程开发,在我早期学习java的时候,很多书上把java的多线程开发标榜为简单易用,这个简单易用是以C语言作为参照的,不过我也没有使用过C语言开发过多线程,我只知 ...

  6. Socket聊天程序——服务端

    写在前面: 昨天在博客记录自己抽空写的一个Socket聊天程序的初始设计,那是这个程序的整体设计,为了完整性,今天把服务端的设计细化记录一下,首页贴出Socket聊天程序的服务端大体设计图,如下图: ...

  7. zookeeper源码分析之五服务端(集群leader)处理请求流程

    leader的实现类为LeaderZooKeeperServer,它间接继承自标准ZookeeperServer.它规定了请求到达leader时需要经历的路径: PrepRequestProcesso ...

  8. zookeeper源码分析之四服务端(单机)处理请求流程

    上文: zookeeper源码分析之一服务端启动过程 中,我们介绍了zookeeper服务器的启动过程,其中单机是ZookeeperServer启动,集群使用QuorumPeer启动,那么这次我们分析 ...

  9. zookeeper源码分析之一服务端启动过程

    zookeeper简介 zookeeper是为分布式应用提供分布式协作服务的开源软件.它提供了一组简单的原子操作,分布式应用可以基于这些原子操作来实现更高层次的同步服务,配置维护,组管理和命名.zoo ...

随机推荐

  1. JavaScript内置一些方法的实现原理--Object.freeze()、instanceof

    const定义的常量,一般是不能修改的. 比如: const TIME_OUT = 10000; 但是当值为引用类型值时,还是可以操作对象,扩展或修改对象属性.方法等等. 以下演示代码的操作是不会报错 ...

  2. An incompatible version [1.2.10] of the APR based Apache Tomcat Native library is installed, while Tomcat requires version [1.2.14]

    这个链接的博主写的很详细,直接推荐:https://blog.csdn.net/zhoukikoo/article/details/80532483

  3. (转)使用SDWebImage和YYImage下载高分辨率图,导致内存暴增的解决办法

    http://blog.csdn.net/guojiezhi/article/details/52033796

  4. selenium异常

    记一下让我花时间去找解决办法的异常 org.openqa.selenium.ElementNotInteractableException: element not interactable 第一次出 ...

  5. Hystrix原理与实战

    Hystrix原理与实战 背景 分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务. 比如:订单服务调用商品服务,商品服务调用库存服务. 对于同步调用,当库存服务不可用时,商品 ...

  6. java.lang.NoClassDefFoundError: Could not initialize class xxx

    感慨:啊啊啊啊啊啊啊啊啊啊,这个问题弄了我好久,整整一天!!! 概述:原本是调用公司自己写的jar包的工具类.在其他项目都能调用,一模一样的套用过来就是不行.问了一些同事他们也不知道怎么解决. 然后百 ...

  7. 系统API是原子操作吗?

    系统API里面也会有简单的指令,类似于a++这种,我们认为的简单指令对应到汇编可能很多条.执行在其中某一条汇编的时候可能就切换进程了.切换进程可能发生在用户态(虚拟内存的用户空间),也可能发生在内核态 ...

  8. PS批量制作获奖证书并导出PNG

    其实方法和"使用PS批量制作视频字幕"的方法类似.区别在于制作视频字幕时导出成psd格式就可以直接导入Premiere中使用了,而获奖证书考虑到打印设备有无PS的不确定性,可能需要 ...

  9. es6中的Object.assign

    在写一些插件的时候,我们会经常遇到所传参数需要合并默认参数,并覆盖相同参数的情况,在jQuery中我们可以使用$.extend(),在原生中要想使用得自己封装, 但自从es6出现了Object.ass ...

  10. unity和lua开发游戏常备技能

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321  我的个人博客 一.使用制作滑动列表:使用UILayout做虚拟列表 ui.list = base:findcom(" ...