轻松启动多个 rq worker 进程 ― 横向扩展

Start multiple rq worker processes easily ― Horizontal scaling

如何轻松地在 VPS 中创建大量 rq 工作进程?

现在我正在手动打开一个终端并在其中 运行 python3 worker.py,然后重复此操作直到我获得令人满意的工作实例数 运行。我知道这不是一个可扩展的解决方案,所以我怎样才能自动轻松地完成它。如果有一些工具可以促进这个过程,那就太好了。

我最终使用了 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 脚本 worker.py 相同的目录后,运行 下面的命令将生成 20 个 RQ worker 实例。 worker的数量可以通过supervisord.conf文件中的numprocs选项指定。

$ supervisord -n