celery是python開發的分布式任務調度模塊
Celery本身不含消息服務,它使用第三方消息服務來傳遞任務,目前,celery支持的消息服務有RabbitMQ,redis甚至是數據庫,redis是最佳選擇
已安裝配置好環境python3.x
已成功安裝django
1.安裝依賴包:
cmd下執行命令:
...>pip3 install celery
...>pip3 install redis
...>pip3 install django-celery
...>pip3 install celery-with-redis
2.django的項目目錄下的setting.py中:
INSTALLED_APPS中添加內容:
INSTALLED_APPS = [
......
'djcelery',
]
添加配置信息:
import djcelery
djcelery.setup_loader() # 加載djcelery
# 數據庫調度
CELERYBEAT_SCHEDULER='djcelery.schedulers.DatabaseScheduler'
BROKER_URL='redis://127.0.0.1:6379/0'
BROKER_TRANSPORT='redis'
3.驗證配置成功:
應用目錄下創建celery.py:
from __future__ import absolute_import import os import django from celery import Celery from django.conf import settings os.environ.setdefault('DJANGO_SETTINGS_MODULES','autotest.settings') django.setup() app=Celery('autotest') app.config_from_object('django.conf:settings') app.autodiscover_tasks(lambda:settings.INSTALLED_APPS)
應用目錄下創建tasks.py:
from apitest.celery import app @app.task def hello(): print('已運行')
cmd下項目manage.py目錄執行命令:
...>python3 manage.py celeryd -l info
...>python3 manage.py runserver
瀏覽器訪問:
http://127.0.0.1:8000/admin/djcelery/
如圖配置成功:

