性能分析之工具使用——cpu、io 、mem【工具分析】
nmon
nmon 是一种在aix 与各种 Linux 操作系统上广泛使 用的监控与与分析工具,他主要记录以下内容:
• cpu 占用率
• 内存使用情况
• 磁盘I/O 速度、传输和读写比率
• 文件系统的使用率
• 网络I/O 速度、传输和读写比率、错误统计率与传输包的大小
• 消耗资源最多的进程
• 计算机详细信息和资源
• 页面空间和页面I/O 速度
• 用户自定义的磁盘组
• 网络文件系统
下载
nmon 下载到IBM官方网站即可下载,下载时候注 意选择对应的操作系统版本
分别输入c 、t 、n 、m,可以了解系统cpu ,内存, 消耗资源最高的线程的使用情况。
输出文件
为了实时监控系统在一段时间内的使用情况并将 结果记录下来,我们可以通过运行以下命令实现:
• #./ nmon -fT -s 2 -c 2
-s 2:每2秒进行一次数据采集
-c 2: 一共采集 2次
输入命令后,将自动在当前目录生成一个hostname_timeSeries.nmon 的文件(hostname为当前见识的服务器的主机名)如: djt_137_188_130226_1749.nmon
输出文件图形化分析
上面输出文件后,就需要生成图形化结果 ,进行数据分析:
1 、 下载nmon analyser.xls工具
2 、 打开nmon analyser.xls工具
3 、 调整excel宏安全性:工具-宏-安全性 • (修改安全级别与可靠发行商)
• 安全级别: 低
• (勾上)信任所有安装的加载项和模板
• (勾上)信任对于“Visual Baisc 项目”的访问
4 、 修改完后,确定-关闭nmon analyser.xls,重新打 开
5 、 点击Analyse nmon data 按钮,加载之前下载 djt_137_188_130226_1749.nmon 文件
nmon分析指标详解
1. 各sheet页含义解释 2. nmon分析文件详细指标解释 3. nmon关键指标列表
总体结果图
具体指标分析
Uer%:用户状态的cpu占用率,如果该状态的cpu资源占有率很高,超 出了预定的性能指标,则先考虑优化程序,其次在考虑增加硬件。对于 java开发的系统,可以通过jprofiler性能监控工具,来查找最耗cpu资源的 代码段进行优化,缩短程序的运行时间,从而达到对系统性能的提高。
Sys%:系统状态cpu占用率,主要用于处理系统内核进程间切换的调度。当 Sys%占用较高的比例时,则此时系统在忙于处理进程调度,说明cpu浪费在进 程切换上的时间比较大, 可以考虑增大时间片长度,然而如果时间片太长则 无法保证多任务实时性以及交互性;或者减少应用程序进程数。
Wait%:指CPU空闲且用于等待IO操作完成的时间比例。当wait比例逐渐增高 时,可能是磁盘读写有问题;对数据库系统来说,wait比例逐渐增高,有可 能意味着缓存命中率的降低,导致了磁盘读写的增加,此时可以适当增加缓 存大小。在上图中相对与user%和sys%来说,cpu wait比例较大,则观察磁盘 IO的繁忙状态比例如下图
对IO频繁的系统,磁盘IO有可能成为系统的性能瓶颈。检查磁盘的I/O情况首 先查看磁盘的繁忙情况,如下图显示的是每个磁盘运行时间变化的磁盘繁忙 状态的比例。
当磁盘长期处于“忙”状态时,说明磁盘传输已经跟不上系统的需要,应该 考虑更换磁盘配置。
对数据库系统来说,当wait比例逐渐增高,磁盘读在增加,但写数据保持不 变,有可能意味着缓存命中率的降低,此时可以适当增加缓存大小。
出现问题:
错误:提示没有这个文件或目录
/usr/bin/lsb_release: 没有那个文件或目录
解决方案:
yum install redhat-lsb
或者
yum install redhat-lsb-core
spotlight
1、安装spotlight
2、配置spotlight,注意spotlight默认不能使用root用 户进行连接,需要用户自己创建一个具有root权限的 用户。
(1)useradd spotlight
(2)passwd spotlight;
(3)vim /etc/passwd
(4)将spotlight的权限改成0:0
或者:
# useradd -g root -G root spotlight
# passwd spotlight
创建具备 root 权限的用户 spotlight 并修改其密码,我这里修改的密码为:wuzongmei (这里输入了好多遍,这个密码应该有规则限制)
3、由于spotlight监控linux仍然使用linux的sysstat包, 所有需要安装sysstat包。
(1)检查是否安装sysstat包:rpm -q sysstat;
(2)如果没有,安装:rpm -ivh sysstat。
4、配置spotlight链接linux即可。
创建连接远程服务器:输入服务器ip和刚才创建的用户名和修改的密码,点击ok即可。
然后到下面这界面,是不是特别炫酷。
总体监控流向图
Ctrl+a 总体资源使用情况
Ctrl+a disk资源情况
• Ctrl+a 内存资源情况
其他自己看......就不一一截图了,图形化界面适合做报告图标,不适合定位具体的问题。
nmon
性能分析之工具使用——cpu、io 、mem【工具分析】的更多相关文章
- Java常用工具类之IO流工具类
package com.wazn.learn.util; import java.io.Closeable; import java.io.IOException; /** * IO流工具类 * * ...
- CPU IO MEM NETWork 监控命令
性能优化中CPU.内存.磁盘IO.网络性能的依赖(上) 性能优化中CPU.内存.磁盘IO.网络性能的依赖(下)
- CPU利用率异常的分析思路和方法交流探讨
CPU利用率异常的分析思路和方法交流探讨在生产运行当中,经常会遇到CPU利用率异常或者不符合预期的情况,此时,往往暗示着系统性能问题.那么究竟是核心应用的问题?是监控工具的问题?还是系统.硬件.网络层 ...
- linux性能优化cpu 磁盘IO MEM
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上 ...
- Java 性能分析工具 , 第 1 部分: 操作系统工具
引言 性能分析的前提是将应用程序内部的运行状况以及应用运行环境的状况以一种可视化的方式更加直接的展现出来,如何来达到这种可视化的展示呢?我们需要配合使用操作系统中集成的程序监控工具和 Java 中内置 ...
- Windows五种IO模型性能分析和Linux五种IO模型性能分析
Windows五种IO模型性能分析和Linux五种IO模型性能分析 http://blog.csdn.net/jay900323/article/details/18141217 http://blo ...
- epoll 性能分析(解决占用CPU 过高问题)2
针对服务器框架Engine,在工作线程中发现该线程占用CPU过高,分析之后发现问题出在死循环那里 void cServerBase::OnProcess() { printf("cServe ...
- MySQL服务器 IO 100%的分析与优化方案
前言 压力测试过程中,如果因为资源使用瓶颈等问题引发最直接性能问题是业务交易响应时间偏大,TPS逐渐降低等.而问题定位分析通常情况下,最优先排查的是监控服务器资源利用率,例如先用TOP 或者nmon等 ...
- Centos下的IO监控与分析
近期要在公司内部做个Linux IO方面的培训, 整理下手头的资料给大家分享下 各种IO监视工具在Linux IO 体系结构中的位置 源自 Linux Performance and Tuni ...
- Linux下的IO监控与分析
Linux下的IO监控与分析 近期要在公司内部做个Linux IO方面的培训, 整理下手头的资料给大家分享下 各种IO监视工具在Linux IO 体系结构中的位置 源自 Linux Performan ...
随机推荐
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
- 完整注册登陆php源码,附带session验证。
1.首先先写表单页面login.html. <!DOCTYPE html> <html lang="en"> <head> <me ...
- ServiceComb 集成 Shiro 实践|火影专场发布
Shiro简介 Apache Shiro是一款功能强大.易用的轻量级开源Java安全框架,它主要提供认证.鉴权.加密和会话管理等功能.Spring Security可能是业界用的最广泛的安全框架,但是 ...
- UML-类图定义
1.之前,学习过领域模型(概念模型),与类图的区别: 1).属于OOA 2).没有方法,只有属性和关联 类图属于OOD,属于静态对象建模 2.例子 3.类元包含哪些? 1).类(抽象类) 2).接口
- Java之同步代码块处理实现Runnable的线程安全问题
/** * 例子:创建三个窗口卖票,总票数为100张.使用实现Runnable接口的方式 * * 1.问题:卖票过程中,出现了重票.错票 -->出现了线程的安全问题 * 2.问题出现的原因:当某 ...
- 漫谈设计模式(三):桥接(Bridge)模式 —— 将类功能、结构两层次分离
1.前言 类主要有两个层次,一个是功能层次,另一个是实现层次. 功能层次,一般应用于当前类不能满足多样化的业务需求,让子类去继承(具体)父类,添加加一些父类中没有的功能(一般是增加新的方法),这就属于 ...
- ZJNU 2235 - EnDlEsS ChAsE
因为速度值保证各不相同 所以n只战斗人形会出现 n! 种不同情况 可以用不同id表示不同人形的速度 比如1 2 3三只人形 他们可能的排列有 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 ...
- Bless All
# php code $i = 2333 $myJXOI = JXOI() while($i == 2333){ ++myJXOI.score , ++myJXOI.rp , --myJXOI.常数 ...
- dubbo配置文件加载顺序
JVM 启动 -D 参数优先,这样可以使用户在部署和启动时进行参数重写,比如在启动时需改变协议的端口. XML 次之,如果在 XML 中有配置,则 dubbo.properties 中的相应配置项无效 ...
- IdentityServer4之Token令牌获取流程分析
1.asp.net core 是基于管道模式IdentityServer会在注册一个管道处理程序 IdentityServerMiddleware 类专门处理登录验证的逻辑,本次主要讲的是access ...