我的芹菜数据库后端设置是:
CELERY_RESULT_BACKEND = "database"
CELERY_RESULT_DBURI = "mysqlite.db"
我使用RabbitMQ作为我的消息。
似乎没有任何结果存储在数据库中,但我可以在任务完成后读取结果。它们是在内存还是RabbitMQ缓存中?
我没有尝试多次读取相同的结果,所以也许它只读一次然后噗!
答案 0 :(得分:1)
CELERY_RESULT_DBURI用于sqlalchemy结果后端,而不是Django结果后端。 Django总是使用在DATABASES设置中配置的默认数据库(如果在较旧的Django版本上,则使用DATABASE_ *设置)
答案 1 :(得分:0)
我的芹菜守护进程工作得很好,但我在收集任务结果时遇到了困难。 task_result.get()导致超时。和task.state总是PENDING ..(但工作完成)我尝试了单独的sqlite dbs,一个由工人共享的postgres数据库。但我仍然无法得到结果。 CELERY_RESULT_DBURI对我来说似乎没用(对于芹菜2.5)我认为这是一个较新的配置。欢迎任何建议......