django celery

包:Django、django-celery-results、celery、redis、flower

在Celery4.0之前的版本中,有一个专门供Django使用的Celery版本django-celery.但现在Celery已经统一为一个版本,所以直接安装原生的Celery即可。

1、首先在settings里配置

1.1 :在INSTALLED_APPS里添加上 django_celery_results

1.2:这里我使用的是redis作为boker

在settings里指定 boker backend 和 boker backend链接地址

BROKER_BACKEND ="redis"

BROKER_URL ='redis://127.0.0.1:6379/0'  # redis作为中间件

CELERY_RESULT_BACKEND ='django-db' #使用database作为结果存储

CELERY_IMPORTS = ("apps.supply_order.tasks",)

# Specified key was too long; max key length is 767 bytes

DJANGO_CELERY_RESULTS_TASK_ID_MAX_LENGTH =191  # 设置innerdb utf8mb

2、在settings同级目录里添加celery

from __future__import absolute_import

import os

from celeryimport Celery

from django.confimport settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE','finance_c2c.settings')

app = Celery('finance_c2c')

app.config_from_object('finance_c2c.settings')

app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

# export C_FORCE_ROOT=True

3、添加任务

添加task.py 但是要加入到settings的CELERY_IMPORTS里

4、开启flower

4.1:celery -A proj flower
4.2 : celery -A proj flower --port:1234 修改端口号
4.3 :celery flower --broker=redis://guest:guest@localhost:6379/0 设置端口号

你可能感兴趣的:(django celery)