我需要在HTTP请求之间运行一个CPU和内存密集的Python脚本(分析和更改冗长的WAV文件)作为我的Web服务器(VPS)上的后台进程.
该脚本最多需要20秒才能运行,我担心服务器上的性能.是否有一个很好的方法来降低流程的优先级,定期放弃对操作系统的控制,或以其他方式保护我的适度服务器的性能?
假设它是UNIX服务器,您可以使用nice命令降低其优先级.这应该够了吧.
您可以在基于Linux的服务器上使用cpulimit.它允许您限制CPU使用率(指定限制百分比),即使是已经开始运行的脚本也是如此,并且它的用法非常简单.
它可以在Debian存储库中找到,因此您可以使用aptitude轻松安装它:
apt-get install cpulimit
典型的使用方法cpulimit
包括:
# To limit CPU usage to 75% of program called foo: cpulimit -e foo -l 75 # To limit CPU usage to 50% of program with pid = 1582 cpulimit -p 1582 -l 50