加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

详解Linux下的IO监控与分析:系统级+进程级+业务级+文件级IO

发布时间:2019-06-06 00:21:07 所属栏目:Windows 来源:波波说运维
导读:副标题#e# 概述 学习优化,理解IO还是很重要的,今天抽空整理了一下这块内容,下面一起看看吧~ 下面这张经典的图源自 Linux Performance and Tuning Guidelines.pdf 各种IO监视工具在Linux IO 体系结构中的位置 1 、系统级IO监控 1.1、iostat iostat-xdm1#

ioprofile -p `pidof io_event` -c sizes # 读写大小

详解Linux下的IO监控与分析--系统级+进程级+业务级+文件级IO

注: ioprofile 仅支持多线程程序,对单线程程序不支持. 对于单线程程序的IO业务级分析,strace足以。

3.3、总结

ioprofile本质上是strace,因此可以看到read,write的调用轨迹,可以做业务层的io分析。

4 、文件级IO监控

文件级IO监控可以配合/补充"业务级和进程级"IO分析

文件级IO分析,主要针对单个文件, 查看当前哪些进程正在对某个文件进行读写操作.

  • lsof 或者 ls /proc/pid/fd
  • inodewatch.stp

4.1、lsof

查看当前文件由哪些进程打开

lsof ../io # io目录 当前由 bash 和 lsof 两个进程打开

详解Linux下的IO监控与分析--系统级+进程级+业务级+文件级IO

lsof 命令 只能查看静态的信息, 并且"打开" 并不一定"读取", 对于 cat ,echo这样的命令, 打开和读取都是瞬间的,lsof很难捕捉

4.2、inodewatch.stp

可以用 inodewatch.stp 来弥补

  1. stap inodewatch.stp major minor inode # 主设备号, 辅设备号, 文件inode节点号  
  2. stap inodewatch.stp 0xfd 0x00 523170 # 主设备号, 辅设备号, inode号,可以通过 stat 命令获得  

详解Linux下的IO监控与分析--系统级+进程级+业务级+文件级IO

【编辑推荐】

  1. 快速解决Windows和Linux下的端口冲突问题
  2. 在Linux上监控CPU和GPU温度
  3. Linux下的进程间通信:套接字和信号
  4. 在 Windows 中运行 Linux 命令的 4 种方法
  5. 在Windows中运行Linux命令的4种方法
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!