反复轮询列表以查看完成的工作的最佳方法

时间:2019-06-11 16:02:56

标签: python redis queue celery

我们有一个返回jobID的服务,其状态为“已排队”,“正在运行”或“完成”。

是否有一个库或框架可让我们将新的jobIDs添加到队列中并轮询jobIDs的集合,以查看哪些处于COMPLETED状态。 然后从队列中弹出该jobID

Celery或RedisQueue似乎有用,但是它们一直在后台运行,这并不理想。 是否有任何更简单,更轻便的解决方案可供我插入和使用?

1 个答案:

答案 0 :(得分:1)

Redis LIST提供了阻止操作。您可以自己轻松地实现这种逻辑。

BLPOPBRPOP可以接收与参数一样多的列表,它将返回弹出的项目或阻止客户端,并等待直到项目被推送(或直到您选择的超时)为止。 BRPOPLPUSH可以将元素移动到另一个列表,但只能监视一个列表。

相关问题