在Gearman服务器上能清空作业队列吗
在Gearman服务器上,有办法清空一个工作队列吗?我正在使用Gearman的Python驱动,但文档里没有关于清空队列的任何信息。我想这个功能应该是存在的,可能需要直接连接到Gearman服务器才能实现。
3 个回答
14
我看到了一种方法,链接在这里:这个方法。
这个命令是:/usr/bin/gearman -t 1000 -n -w -f function_name > /dev/null
简单来说,这个命令会把所有的任务都丢到一个叫做/dev/null的地方。
5
根据我从文档中了解到的内容,以及使用PHP和gearman的经验,清空任务队列的唯一方法就是重启gearmand任务服务器。如果你使用的是持久化的任务队列,那么你还需要清空你用作持久存储的地方。如果这个存储是数据库的话,你就需要把相关表中的所有数据都删除掉。
步骤是:停止gearmand --> 清空表中的数据 --> 启动gearmand
希望这样解释够清楚。