在应用中使用celery
项目结构:
proj/__init__.py
/celery.py
/tasks.py
proj/celery.py
from __future__ import absolute_import, unicode_literals
from celery import Celery
app = Celery('proj',
broker='pyamqp://guest@localhost//',
backend='redis://localhost',
include=['proj.tasks'])
# Optional configuration, see the application user guide.
app.conf.update(
result_expires=3600,
)
if __name__ == '__main__':
app.start()
在这个模块中,创建一个Celery实例。其中:
- broker表示消息中间件
- backend表示结果存储的地方
- include表示worker启动时,要导入的task。只有加入到这里,worker才能找到他们。
proj/tasks.py
from __future__ import absolute_import, unicode_literals
from .celery