【问题标题】:Performance monitoring tools vs the process status (ps) command性能监控工具 vs 进程状态 (ps) 命令
【发布时间】:2019-03-01 12:37:39
【问题描述】:

我目前正在寻找性能监控工具,这些工具可以生成特定操作系统进程的指标输出。我想要一些轻量级的东西(不影响它当前正在监视的系统的性能),因此我编写了一个简单的 bash 脚本,它使用ps 命令来检索 CPU% 和 Memory%,将它们写入文件,然后休眠指定的几秒钟,然后重复直到终止。

我的问题是这是否是一种正确的方法,因为在ps (here) 的文档中可以找到:

由于 ps 无法比系统运行得更快,并且与任何其他系统一样运行 预定的过程,它显示的信息永远不会是准确的。

我知道其他方法,例如在 python 中使用ps_util 并以这种方式检索信息。但是,这(和任何其他工具)是否更快或更可靠?如果是这样,你能推荐一个工具吗? 还是ps 命令足够安全?

【问题讨论】:

    标签: python bash performance performance-testing


    【解决方案1】:

    ps 主要是一个快照工具,可让您即时查看特定时刻。您无法从 ps 获得即时 CPU 百分比。 ps 页面提供了有关 CPU 的以下信息:

    CPU 使用率目前表示为所用时间的百分比 在进程的整个生命周期中运行。这并不理想, 并且它不符合 ps 否则符合的标准 至。 CPU 使用率加起来不太可能恰好达到 100%。

    您可以使用top 工具,它是一种监控工具,可以随着时间的推移不断轮询数字。对于需要重复更新的情况,我建议使用 top

    有关topps之间差异的更详细说明,您可以阅读此问题的答案:https://unix.stackexchange.com/questions/58539/top-and-ps-not-showing-the-same-cpu-result

    【讨论】:

    • 感谢您的帮助。
    猜你喜欢
    • 2010-09-07
    • 2023-04-05
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-26
    • 1970-01-01
    • 2013-01-04
    相关资源
    最近更新 更多