[Linux] 磁盘IO性能查看和优化以及iostat命令

[Linux] 磁盘IO性能查看和优化以及iostat命令,第1张

概述今天听到看部门同事有遇到IO过高的问题 , 简单的查询了下 iostat命令: %user:CPU处在用户模式下的时间百分比。 %nice:CPU处在带NICE值的用户模式下的时间百分比。 %syst

今天听到看部门同事有遇到IO过高的问题,简单的查询了下

 

 iostat命令:

%user:cpu处在用户模式下的时间百分比。

%nice:cpu处在带NICE值的用户模式下的时间百分比。

%system:cpu处在系统模式下的时间百分比。

%iowait:cpu等待输入输出完成时间的百分比。

%steal:管理程序维护另一个虚拟处理器时,虚拟cpu的无意识等待时间百分比。

%IDle:cpu空闲时间百分比。

 

如果%iowait的值过高,表示硬盘存在I/O瓶颈

如果%IDle值高,表示cpu较空闲

如果%IDle值高但系统响应慢时,可能是cpu等待分配内存,应加大内存容量。

如果%IDle值持续低于10,表明cpu处理能力相对较低,系统中最需要解决的资源是cpu。

 

工作机制

当应用程序需要读取文件中的数据时, *** 作系统先分配一些内存,将数据从存储设备读入到这些内存中,然后再将数据分发给应用程序;当需要往文件中写数据时, *** 作系统先分配内存接收用户数据,然后再将数据从内存写到磁盘上。
对于每个文件的第一个读请求,系统读入所请求的页面并读入紧随其后的少数几个页面(不少于一个页面,通常是三个页面),这时的预读称为同步预读。
如果应用程序接下来是顺序读取的话,那么文件 cache 命中,OS 会加大同步预读的范围,增强缓存效率,此时的预读被称为异步预读
如果接下来 cache 没命中,那么 OS 会继续使用同步预读。

 

因此基本思路就是:

尽量避免磁盘的随机IO,尽量利用磁盘预读缓存,利用局部性原理
尽可能地顺序读写一个文件
单进程读写硬盘
避免对大目录 *** 作
把小文件的读写转换为大文件的写

总结

以上是内存溢出为你收集整理的[Linux] 磁盘IO性能查看和优化以及iostat命令全部内容,希望文章能够帮你解决[Linux] 磁盘IO性能查看和优化以及iostat命令所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1014604.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存