Linux 文件和进程级 I/O 性能指标

发布于 2025-01-06 22:02:48 字数 300 浏览 0 评论 0原文

有没有人提出一种解决方案,允许在进程和/或文件级别报告 I/O 性能指标(IOP、MBps)?我不确定 Linux 是否保留此信息,但想了解一下其他人在做什么。

我的用例是:

1)我知道某个特定的文件系统和/或设备正在运行,但我想知道它是正在访问的特定文件还是多个。文件系统本身可能会公开此信息。假设我使用典型的 Linux 文件系统。

2)我想知道哪些进程造成了负载。具体来说,如何报告进程级别的吞吐量 (MBps)、IOP、响应时间?我知道该应用程序可以用来解决这些问题,但是,我更感兴趣的是了解操作系统是否公开了这种级别的数据。

Has anyone come up with a solution that allows the I/O performance metrics (IOPs, MBps) to be reported at the process and/or file level? I'm not sure if Linux keeps this info available, but wanted to reach out see what others are doing.

My use cases are:

1) I know that a particular file system and/or device is running hot, but I want to know if it's a particular file that's being accessed or multiple. Potentially the filesystem itself exposes this information. Assume I'm using the typical Linux file systems.

2) I want to know which processes are contributing to the load. Specifically how can I report throughput (MBps), IOPs, response times at the process level? I know that the app could be instrumented to work this stuff out, however, i'm more interested in understanding if the OS exposes this level of data.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

心碎的声音 2025-01-13 22:02:48
  1. 您可以使用 lsof /dev/sda1 获取某个设备(例如 sda1)上所有打开文件的列表。但不太可能获得文件级别的吞吐量信息(至少我不知道如何)。
  2. 您可以使用 iotop 获得进程级别的吞吐量。我不知道获得 IOPS 的任何便捷方法,但您可以定期读取 /proc/[number]/io 找到它。
  1. You can get the list of of all open files on some device (for example, sda1) with lsof /dev/sda1. But it's unlikely to get throughput information on file level (at least I don't know how).
  2. You can get throughput on process level with iotop. I don't know any convenient way to get IOPS, but you can find it periodically reading /proc/[number]/io.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文