RQ-清空和删除队列

RQ-清空和删除队列,第1张

RQ-清空和删除队列 使用RQ清理

RQ提供了使任何队列为空的方法:

>>> from redis import Redis>>> from rq import Queue>>> qfail = Queue("failed", connection=Redis())>>> qfail.count8>>> qfail.empty()8L>>> qfail.count0

test
如果仍然存在,也可以对队列执行相同的 *** 作。

清理使用
rq-dashboard

安装rq-dashboard:

$ pip install rq-dashboard

启动它:

$ rq-dashboardRQ Dashboard, version 0.3.4 * Running on http://0.0.0.0:9181/

在浏览器中打开。

选择队列

点击红色按钮“空”

您完成了。

Python函数清除作业

如果您运行的Redis太旧,在RQ使用的命令上失败,那么您仍然可能会通过python代码删除作业而成功:

该代码采用队列的名称,其中是作业ID。

Usilg LPOP,我们要求提供一个工作ID。

在作业ID上添加前缀(默认情况下为“ rq:job:”),我们有一个密钥,存储作业。

在每个键上使用DEL可以逐项清除数据库作业。

>>> import redis>>> r = redis.StrictRedis()>>> qname = "rq:queue:failed">>> def purgeq(r, qname):... while True:...     jid = r.lpop(qname)...     if jid is None:...         break...     r.delete("rq:job:" + jid)...     print jid...>>> purge(r, qname)a0be3624-86c1-4dc4-bb2e-2043d2734b7b3796c312-9b02-4a77-be89-249aa7325c25ca65f2b8-044c-41b5-b5ac-cefd56699758896f70a7-9a35-4f6b-b122-a08513022bc5


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5007671.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存