7

我需要在 HTTP 请求之间运行一个占用大量 CPU 和内存的 Python 脚本(分析和更改冗长的 WAV 文件)作为我的 Web 服务器(VPS)上的后台进程。

该脚本最多需要 20 秒才能运行,我担心服务器的性能。有没有一种好的方法可以降低进程的优先级,定期将控制权交给操作系统,或者以其他方式保护我的普通服务器的性能?

4

2 回答 2

7

假设它是一个 UNIX 服务器,您可以使用nice 命令来降低它的优先级。这应该够了吧。

于 2009-03-18T20:57:42.990 回答
5

您可以在基于 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
于 2009-03-18T21:15:54.600 回答