我有一个关于Gearman的问题:
我的脚本基于嵌套集。若其中一个任务失败,我们必须停止所有其他任务的队列。所有任务必须同步执行。
这就是我的意思:
task 1 - success
task 2 - success
task 3 - success
task 4 - error <--- fails
task 5 - stop (!) don't execute
task 6 - stop (!) don't execute
...
我使用扩展名:https://github.com/filsh/yii2-gearman
所以问题是-在一项任务失败后,如何停止整个队列
您想要的是在作业失败时清空队列,这是正确的吗?
当作业失败时,您可以执行此命令清空队列:
/usr/bin/gearman -t 1000 -n -w -f function_name > /dev/null
如果按照你的逻辑,另一个解决方案是在成功后创造下一份工作。