性能分析之工具使用——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 ...
随机推荐
- IPC---有名管道FIFO
一.参考网址 1.Linux学习之——FIFO实例
- 配置window下python3环境
功能介绍 整理生信小知识库,一些技巧一些知识. 昨天 以下配置环境基于window操作系统,安装python3版本为例,推荐基础版配置. ! METHOD 1 (基础版) 官网下载对应电脑版本的p ...
- Linux ES集群服务配置说明
说明: ES官网不建议在root用户使用Elastic Server,因此ES集群配置均使用普通账户操作,新建账户 elastic. Linux版本为CentOS 7.3,ES版本为5.5.0. 一. ...
- 遇到屏蔽selenium的站点如何突破
访问某团外卖,查看下一页商家信息,正常浏览器可以打开, selenium打开就404, 分析请求参数,生成方法最后定位到 rohr*.js 而且有判断selenium特征 抓耳挠腮搞了半天没把这个j ...
- Codeforces 1288C - Two Arrays
题目大意: 给定n和m,有两个数组,两个数组的长度都等于m 数组内每个元素都在1到n中 对于两个数组对应的位置i,必须满足a[i]<=b[i] a数组必须是不下降的序列 b数组必须是不上升的序列 ...
- pandas 学习笔记【持续更新】
import numpy as np import pandas as pd import matplotlib.pyplot as plt df1 = pd.DataFrame(np.arange( ...
- SQL case when else 语句:选出年份等于1970的,选出的结果用科目和获奖者排序,同时把经济和化学2科放到最后:SELECT * FROM nobel_win WHERE year=1970 ORDER BY CASE WHEN subject IN ('Economics','Chemistry') THEN 1 ELSE 0 END ASC, subject, winner;
SELECT * FROM nobel_win WHERE year=1970 ORDER BY CASE WHEN subject IN ('Economics','Chemistry') THE ...
- docker安装(centos-7)
centos7安装docker:Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker .通过 uname -r 命令 ...
- CSS 定位体系概述
三种定位体系简介 框( box )布局影响因素之一,便是定位体系.定位体系也是其最为重要的影响因素. CSS2.1 中,一个框可以根据三种定位体系布局.CSS2.1 中的定位体系帮助作者使他们的文档更 ...
- TPO6-1Powering the Industrial Revolution
The source had long been known but not exploited. Early in the eighteenth century, a pump had come i ...