如何轻松地在VPS中创建大量rq个工作进程?
现在我手动打开一个终端并在其中运行# takes a rating from home and away team, as well as is_cup boolean, returns score
use_ratings <- function(home_rating, away_rating, is_cup = FALSE) {
if(is_cup) { # if is_cup, its a neutral site game
rating_diff <- -(home_rating - away_rating) / 400
} else {
rating_diff <- -(home_rating + 85 - away_rating) / 400
}
W_e <- 1 / (10^(rating_diff) + 1)
return(W_e)
}
,然后重复此操作直到我得到满意的工作实例数量。我知道这不是一个可扩展的解决方案,所以我该如何自动轻松地完成它。如果有一些工具可以促进这一过程,那就太好了。
答案 0 :(得分:0)
我最终使用Supervisord。这似乎是一个非常好的解决方案。
相关的supervisord.conf
文件如下所示。
[supervisord]
[program:worker]
command=python worker.py
process_name=%(program_name)s-%(process_num)s
numprocs=20
directory=.
stopsignal=TERM
autostart=true
autorestart=true
将此文件放在与RQ工作程序脚本worker.py
相同的目录中后,只需运行以下命令即可生成20个RQ工作程序实例。可以通过numprocs
文件中的supervisord.conf
选项指定工作人员数量。
$ supervisord -n