我到底在做什么?
我最近发现了一个名为django-skel的令人敬畏的django模板。我用它开始了一个项目,因为它使用django很容易使用heroku。在我尝试让芹菜工作之前,这一切都很顺利。无论我尝试什么,我都无法完成任务。所以我开始了一个新的裸骨应用程序,只是为了看看我是否可以让它工作而没有任何其他的疯狂防止事情。
这是我bare-bones app.我在heroku上运行了这个。 Django管理员正在工作,我将我的数据库同步并迁移。我正在为我的RabbitMQ使用CloudAMQP Little Lemur。我看到在RabbitMQ界面中排队的请求,没有任何反应。如何排队任务是在shell中手动运行的:
from herokutest.apps.otgcelery.tasks import add
result = add.delay(2,2)
我确保所有3个dynos都在运行,但仍然没有。
我也在本地工作。
我确信有很多问题,我愿意给他们。请问。
答案 0 :(得分:2)
感谢大家的帮助。 有几件事我最终做错了。首先是我错误地导入了任务。我所要做的就是:
from apps.otgcelery.tasks import add
result = add.delay(2,2)
Celery对你导入任务的方式非常挑剔。第二个问题是CloudAMQP Free插件不能与django-skel一起使用。它们将您的连接数限制为三个,以及每个线程如何在其上启动使用这些连接的速度非常快,您的任务就开始无法连接。所以我用几种不同的方式解决了这个问题。我尝试了另一个BigWigs RabbitMQ,它运行得很好。但是,由于他们仍处于测试阶段,我决定尝试使用Redis。这也很有效,而且我的任务正在以我可以称之为的速度开火。
再次感谢大家的帮助。