如何降低cron脚本的CPU和I/O优先级?

jel*_*ela 7 php unix cron

我想在低I/O和CPU优​​先级下通过cron运行脚本.如果我理解正确(我可能不会),我可以添加proc_nice(10);到我的脚本中以降低CPU优先级,但I/O优先级没有PHP等价物.

似乎有一个shell命令ionice,但我是一个Linux白痴,我不知道我在做什么.如果我想使用nice和ionice来降低相关脚本的优先级,那么这是我的cron文件的正确行吗?

0 * * * * /usr/bin/nice -n 10 /usr/bin/ionice -c 3 /path/php/bin/php /path/script.php
Run Code Online (Sandbox Code Playgroud)

-c3这里得到了参数("将进程放在空闲调度类中"),我不相信这就是我想要的.

使用PHP调用proc_nice()而不是使用此方法有什么好处?

编辑:我的cron脚本没有使用上面的运行,所以我肯定误解了一些东西

Gor*_*onM 0

Unix 及其克隆倾向于将一个实用程序/命令的输出变成下一个实用程序/命令的输入的概念。

在你的例子中,结果是(我认为)这nice实际上会影响ionice. 只有ionice会对 PHP 产生影响。

更新:实际上,它应该继承它的优点,请参阅评论)

我发现一个页面建议执行以下操作以同时nice影响ionice您的 PHP 实例:

ionice -c3 -p$$;nice -n 10 /usr/bin/php /path/to/your/script.php
Run Code Online (Sandbox Code Playgroud)