芹菜最好的方式管理/获得任务的eta

时间:2017-06-05 11:29:00

标签: python redis celery estimation

我希望每次获得请求时都能获得芹菜中的任务。在芹菜中没有直接api来获得任务预定时间(除了inspect() - 但这对我来说似乎非常昂贵)

我如何管理特定任务的eta?在Django模型中存储eta时间的缺点是不一致的(要么我不能存储taks_id因为我不能 - 不知道如何从task_id获得eta)

我在一个问题上看到没有api,因为它不知何故取决于经纪人等等。但我希望有一些解决方案

那么管理task_id以获得eta的最佳方法是什么?

后端和经纪人是redis

1 个答案:

答案 0 :(得分:0)

我认为没有一种神奇的方法可以做到这一点。

我在我的应用程序中所做的只是记录每个任务的执行时间并将其作为ETA返回。如果您想要更准确一些,您还可以考虑redis队列大小和任务消耗率。