gpt4 book ai didi

服务器空闲时的ruby进程

转载 作者:数据小太阳 更新时间:2023-10-29 08:34:33 30 4
gpt4 key购买 nike

我想运行 Stalker 作业,只有在 CPU 负载较低时才不会影响站点。

工作是将视频从任何格式转换为 flv 和 mp4。所以这是一项相当昂贵的工作。

我怎样才能做到这一点?

编辑

这样好吗?

怎么样 smthng 喜欢

load = `uptime`.gsub(/(.*): /,'').strip.split ' '
if (load[0].to_f < 0.7 && load[0].to_f < load[1].to_f) || (!args["max_delay"].nil? && total_delay > args["max_delay"] && load[0].to_f < 0.85)
do stuff
end

最佳答案

运行一个单独的 Ruby 解释器进程,它只进行代码转换,并使用 nice -n 19 或者 nice -n 12 运行它。

在已经启动解释器之后,您可能希望在 Ruby 代码中降低优先级(提高 nice 级别)。

现在,您可以使用Process.setpriority 来更改解释器的优先级。但是除非您有特权或在 Linux 上并且具有 CAP_SYS_NICE 功能,否则您将无法恢复到正常优先级。

那个问题的策略可能包括接收一些工作要做、执行ProcessKernel.fork、降低优先级、运行作业,然后调用 exit

关于服务器空闲时的ruby进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4649425/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com