本篇章来看看关于配置这块的内容。
Celery使用简单,配置也非常简单。Celery有很多配置选项能够使得celery能够符合我们的需要,但是默认的几项配置已经足够应付大多数应用场景了。
配置信息可以直接在app中设置,或者通过专有的配置模块来配置。
from celery import Celery
app = Celery(
'celery_tasks.tasks',
broker='redis://127.0.0.1:6379/8',
backend='redis://127.0.0.1:6379/9',
)
还可以这样写,如下:
from celery import Celery
app = Celery('celery_tasks.tasks')
# 增加配置
app.conf.update(
result_backend='redis://127.0.0.1:6379/9',
broker_url='redis://127.0.0.1:6379/8',
)
使用app.conf.update
的方法更新配置的指定参数与前面的有些不一样。例如:前面写broker='redis://127.0.0.1:6379/8',
,后面的配置写成broker_url='redis://127.0.0.1:6379/8',
对于比较大的项目,我们建议配置信息作为一个单独的模块。我们可以通过调用app的函数来告诉Celery使用我们的配置模块。
配置模块的名字我们取名为celeryconfig, 这个名字不是固定的,我们可以任意取名,建议这么做。我们必须保证配置模块能够被导入。
下面我们在tasks.py模块 同级目录下创建配置模块celeryconfig.py:
# 设置结果存储
result_backend='redis://127.0.0.1:6379/9'
# 设置代理人broker
broker_url='redis://127.0.0.1:6379/8'
tasks.py文件修改为:
from celery import Celery
from . import celeryconfig # 导入配置文件
app = Celery('celery_tasks.tasks')
# 从单独的配置模块中加载配置
app.config_from_object(celeryconfig)
更多配置: http://docs.celeryproject.org/en/latest/userguide/configuration.html#configuration