Python unix shell脚本中的子进程性能不佳
我制作了一个服务器监控脚本,主要监控网络驱动器的使用情况和集群的作业状态。它非常基本,主要使用unix命令,如top、status、df等 我依赖于使用工作良好的子进程,但在繁重的工作负载下,它开始变得非常慢,并占用大量cpu容量。最慢的部分是我从status-a向用户发送grep,他们有数千个作业在运行 脚本在无尽的while循环中运行Python unix shell脚本中的子进程性能不佳,python,unix,subprocess,Python,Unix,Subprocess,我制作了一个服务器监控脚本,主要监控网络驱动器的使用情况和集群的作业状态。它非常基本,主要使用unix命令,如top、status、df等 我依赖于使用工作良好的子进程,但在繁重的工作负载下,它开始变得非常慢,并占用大量cpu容量。最慢的部分是我从status-a向用户发送grep,他们有数千个作业在运行 脚本在无尽的while循环中运行 因此,我正在寻找更有效的解决方案来做到这一点,任何帮助或暗示都将不胜感激。我使用的是Python2.7,我可以建议您看看,尤其是用Python编写的源代码
因此,我正在寻找更有效的解决方案来做到这一点,任何帮助或暗示都将不胜感激。我使用的是Python2.7,我可以建议您看看,尤其是用Python编写的源代码 这背后的全球理念是不使用unix工具(top,df…),而是解析它们的信息源
打开一个文件(特别是在像procfs这样的内存文件系统中)比派生一个进程来启动unix命令要快得多。即使看不到脚本,也无法说明脚本的性能。请尝试分析
top
,df
等输出。看看它是如何使用的。