在 Python-RQ 中减少机器上工作人员数量的好方法是什么?
根据文档,我需要向机器上的一个工作进程发送一个 SIGINT 或 SIGTERM 命令:
打倒工人
如果在任何时候,worker 收到
SIGINT
(via Ctrl+C) 或SIGTERM
(viakill
),worker 会等到当前运行的任务完成,停止工作循环并优雅地注册自己的死亡。如果在此删除阶段
SIGINT
或SIGTERM
再次收到,worker 将强制终止子进程(发送它SIGKILL
),但仍会尝试注册自己的死亡。
这似乎意味着大量的编码开销:
- 需要跟踪工作进程的 PID
- 需要有一种从远程机器发送 SIGINT 命令的方法
我真的需要自定义构建这个吗,或者有没有办法使用 Python-RQ 库或其他一些现有的库轻松地做到这一点?