1

我刚刚开始一个项目,试图获得一个非常简单的Django Celery项目。由于我主要只是想看看它是如何工作的,这里是我的设置是这样的:有apply_async()在Django内部集成芹菜?

BROKER_TRANSPORT = "django" 
CELERY_ALWAYS_EAGER = True 
CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler" 

我测试发帖任务,并通过在Django管理站点安排他们的工作都很大。

我目前看到的唯一问题是我需要运行两个独立的进程来测试我的任务,django runserverdjango celerybeat。当我更改周期性任务时,我需要重新启动celerybeat进程以使其重新加载。有什么方法可以运行与runserver集成的celerybeat进程,以避免必须记住启动其他进程?

回答

2

我自己并没有使用它,但似乎你应该看看django-supervisor项目。我的理解是,它可以配置为自动重新加载内容,以便与您的Web服务器一起运行的任意数量的并发运行进程。

或者,您可以使用芹菜2.5's - 自动载入功能。在the release notes的更多细节。