Supervisord过程控制 - 停止单个子过程

时间:2013-09-20 19:05:55

标签: python subprocess jobs gearman supervisord

我们正在使用Supervisord来运行由Gearman作业服务器启动的工作人员。要从队列中删除作业,我们必须运行:

$ sudo killall supervisord

杀死所有Supervisord子进程,以便在删除时不会生成作业,然后

$ gearman -n -w -f FUNCTION_NAME > /dev/null

从服务器中删除作业。

有没有办法只杀死一个Supervisord子进程,而不是使用killall?例如,如果我们有多个作业正在运行并且单个作业的运行时间超过应有的时间,或者开始抛出错误,那么我们如何杀死子进程并从服务器中删除作业而不会终止所有子进程?

1 个答案:

答案 0 :(得分:1)

是:使用supervisorctl与supervisord互动。如果您需要以编程方式执行此操作,则会有一个Web服务接口。