iostat命令详解指标分析
Iostat
iostat命令用于监视系统CPU和I/O设备负载
常用方法: iostat -x 1 12 检测系统的io状态,每一秒刷新一次,一共刷新12次
-x该选项显示和io相关的扩展数据
还可以使用-k或者-m选项以按照kb或MB显示单位
不足之处:iostat输出结果大多数是一段时间内的平均值,因此只能对系统整体情况进行分析,难以反应峰值情况,不能针对某个进程进行深入分析
查询结果含义:
avg-cpu段
%user:显示用户级(应用程序)执行产生的cpu使用率百分比(理论上一个良好的系统cpu处于user模式下的时间小于60%为优(参考)如果高于70%,可以考虑对应用程序进行优化)
%nice:
Cpu处在nice值的用户模式下的时间百分比
Nice值:是linux系统中反应进程优先级的一个指数,范围是-20到19,默认是0,最高是-20,最低是+19,通过nice命令可以得到,nice的英文含义是友好的意思,意思就是级别越大,越友好,就会让给其他进程越多的cpu处理时间,可以通过nice -n 10 bash来打开一个nice值为10的bash(bash可由其他conmand替代)
%system:显示系统(内核)执行产生的cpu使用率百分比
%user+%sys<80%,Sys%>30%时,观察是否有过多的中断或上下文切换(上下文切换参考:Linux CPU性能指标浅析-社区博客-网易数帆)
%steal:是衡量虚拟机CPU的指标,是指分配给本虚拟机的时间片被同一宿主机的其他的虚拟机使用,一般%steal值较高时,说明宿主机的资源使用已到达瓶颈
%idle:Cpu空闲时间百分比(100%)为完全空闲,
%idle高但系统响应慢,说明cpu在等待分配内存,此时应增加内存容量,idle%过低持续小于10%则说明需要加强cpu
Deivce段:
监测设备的名称
rrqm/s:每秒合并的读操作次数
wrqm/s:每秒合并的写操作次数,即wmerege/s
r/s:每秒完成的读I/O设备次数
w/s:每秒完成的写I/O设备次数
rkb/s:每秒读K字节数
rkb/s |
wkb/s |
avgrq-sz |
avgqu-sz |
await |
r_await |
w_await |
svctm |
util% |
每秒读K字节数 |
每秒写K字节数 |
平均每次设备I/O操作的数据大小(扇区) |
平均I/O队列长度 |
平均每次I/O操作的等待时间(毫秒) |
每个读操作平均所需时间 |
每个写操作平均所需时间 |
平均每次I/O设备的操作服务时间 |
一秒中有多少%的时间用于IO操作 |
rrqm/s:每秒合并读操作次数(当系统需要读取数据的时候,VFS(virtual File System)将请求分发到各个FS,如果FS发现不同的读请求读取的是相同block的数据,FS会将这个数据merge(合并),即rmerge/s
r/s|w/s:即delta(rio)/s|delta(wio)/s
rkb/s|wkb/s:是rsect/s|wsect/s的一半,因为每扇区大小为512字节(需要计算)
rsect/s:每秒读扇区数,即delta(rsect)/s
avgrq-sz=delta(rsect+wsect)/delta(rio+wio),平均每次设备I/O操作的数据大小,单位是扇区,每个请求平均大小,在压测时,这个值在200-400之间算是比较理想的状态,如果这个值比较小,说明太多的I/O请求没有被合并,或者大的I/O请求被打散,在写操作时,过多小的请求会造成磁盘磁头的频繁移动,降低I/O性能
avgqu-sz:平均请求队列长度,delta(aveq)/s/1000,这个值在正常的系统中不应该超过113太多,如果到达了200左右,甚至上千,则说明发生了IO拥塞,而系统还在往I/O队列中放请求(有一个列外是在执行sync,fsync操作时,该值到达最大值8192是正常的),这个值越低越好。
r_await/w_await:不仅包括硬盘读/写操作的时间,还包括了在kernel中等待的时间
如果await远大于svctm,说明I/O队列太长,得到的响应时间变慢,avgqu-sz值过大,也说明,I/O队列过长,可能存在硬盘瓶颈(await包括等待时间和服务时间)
如果%util值接近100%,则表示设备可能已经满负荷运行了,注意:如果是多硬盘,即使%util值是100%,因为磁盘的并发能力,所以磁盘的使用未必就到达了瓶颈。
吞吐量计算方式=rkb/s+wkb/s:顺序读写频繁的应用,传输大量连续数据,如电视台的视频编辑,视频点播VOD,关注连续读写性能,数据吞吐量是关键衡量指标
IOPS计算方式=r/s+w/s,即I/O per second,即每秒钟处理的I/O个数,IOPS是随机读写性能的关键衡量指标
Iostat命令有时不能准确的判断系统瓶颈的问题所在,可以结合top,sar等命令再进行判断。
iostat命令详解指标分析相关推荐
- 【Linux系列-2】iostat命令详解
iostat命令详解 1 iostat简介 2 命令与参数项 2.1 命令格式 2.2 参数详解 3 输出项目说明 3.1 cpu属性 3.2 磁盘属性 4 使用实例 4.1 查看磁盘详情 4.2 其 ...
- iostat命令详解
%user:用户模式下所花费的CPU时间 建议60%以下 %nicde:用户进程改变过优先级的进程占用CPU时间 一般无用 %system:内核进程所花费的时间 sy+us <80% %iowa ...
- Linux iostat命令详解
Linux iostat命令详解 iostat主要用于监控系统设备的IO负载情况,根据这个可以看出当前系统的写入量和读取量,CPU负载和磁盘负载. 1.命令格式: iostat 参数 时间 次数 2. ...
- linux 监控命令iostat,Linux下 IO实时监控iostat命令详解
Linux系统中的iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视.它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况.同v ...
- 性能调优之iostat命令详解
Linux系统中的iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视.它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况.同v ...
- iostat命令详解_对iostat输出结果的理解
前言: 日常工作中,线上服务会出现各种奇奇怪怪的问题,每次出现问题都是根据现象猜测出现问题的原因,比如请求响应慢了,就排查整个请求的逻辑,每一步花了多少时间,分析半天终于发现是某一步慢了以后,在分析为 ...
- linux iostat 命令详解
iostat主要用于监控系统设备的IO负载情况,iostat提供了丰富的参数给我们查询各种维度的io数据, iostat首次运行时显示自系统启动开始的各项统计信息,之后运行iostat将显示自上次运行 ...
- linux 查询系统io,Linux系统IO实时监控iostat命令详解
一.iostat命令简介 iostat是I/O statistics(输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视.它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情 ...
- linux下iostat命令无效,iostat命令详解
iostat用于输出CPU和磁盘输入输出.分区.网络文件系统NFS相关的统计信息.iostat命令用于监控系统设备的输入/输出情况,并生成报告,以便根据统计报告修改系统配置,获取更优的性能. 命令格式 ...
最新文章
- themleaf返回可以带目录结构
- CGCTF-Web-签到题
- ipad无法充电怎么办_IPAD充电线破损无法保修,资深“果粉”吐槽:店大欺客!...
- project 模板_施工进度横道图不会做?18份计划模板收藏好,输入参数迅速成图...
- 得推分类信息 v4.0 强大且好用的网站信息编辑管理工具
- 操作系统(4)-进程间通信
- Android 功耗(22)---MTK 功耗问题分析
- 华为hcnp认证考试已过
- SmartImage图片第三方控件android
- 第18天:京东网页头部制作
- 袖珍计算器c语言设计源码,VB程序题:编一模拟袖珍计算器的完整程序,界面如下图所示。要求:输入两个操作数和一个操作符,根据操作符决定所做的运算。 VB源码 龚沛曾...
- kasp技术优点_【华智技术贴】分子标记技术及育种应用(下):基于测序技术的第三代分子标记...
- Android8.0一键root,小米Mix 2(安卓8.0)一键ROOT详解教程,看教程ROOT
- Android视频融合特效播放与渲染
- Mac访达查看隐藏文件的快捷键、命令行设置两种方式
- windows远程会话已断开连接,因为访问被拒绝导致许可证存储的创建失败。请使用提升的权限运行远程桌面客户端—解决方法
- GTP-3算法是一种“暴力美学”的胜利
- Java基础之MySQL数据库与JDBC
- MySQL备份恢复练习
- 黑苹果开启核显加速_如何开启无核显的N卡黑苹果的硬件加速