linux - 在 Linux 中计算命令的 IOPS
问题描述
我想计算IOs
Linux 中某个命令的消耗量。例如,如果我运行“ls”命令,我应该IOs
被它消耗掉。
我已经尝试过这里提供的帮助:
但是,我无法IO
通过命令执行实际操作。我想我得到的是命令执行所花费的时间。
请帮助解决同样的问题。
解决方案
应用程序在从文件或块设备读取/写入数据时执行系统调用(例如,pread/pwrite)。有时这些系统调用会导致存储设备级别的实际 IO,有时不会。对于读取,请求的数据可以从页面缓存中提供。对于写入,可以将数据写入 DRAM,然后异步刷新到存储设备。
您可以使用 strace 查看应用程序的系统调用。例如,要跟踪与 IO 相关的系统调用,strace -f -e file ls
应该打印所有与文件描述符相关的系统调用。您可以将输出重定向到文件并稍后处理。
使用 iostat,例如iostat -d 1 -k -x
,查看存储设备正在查看多少 IO。
推荐阅读
- javascript - Cordova 应用程序 - 键盘显示/打开之前的事件侦听器
- c++ - 如何在不设置完整路径的情况下访问 C++ 中的资源
- json - 更新 json 列需要太多时间
- json - 如何捕获 Apache Beam 中的内置转换引发的异常(在本例中为 JSON 解析)
- pandas - Pandas 动态 Groupby 和 Shift
- android - Android警报对话框未从片段内的片段显示
- asp.net-mvc - 我无法在 plesk Dotnet Core Entity Framework 上连接数据库
- docker - 如何在 docker 中调试 odoo?
- mysql - where 子句中的数字如何影响 sunquery
- angular - 如何使我的应用程序可以通过子域访问?