python用Django+Celery+Redis 监视程序(一)
C盘创建一个目录就叫DjangoDemo,然后开始在该目录下操作。
1.新建Django工程与应用
运行pip install django 安装django
这里我们建一个名为demo
的项目和home
应用。
django-admin startproject demo
创建demo
项目
然后进入demo文件夹运行命令,manage.py startapp home 创建home应用。
2.编辑settings.py
文件
在demo文件夹下的settings.py文件的最后添加如下代码:
###配置Broker
BROKER_URL = 'redis://127.0.0.1:6379/0'
BROKER_TRANSPORT = 'redis'
3.新建celery.py
文件
在demo文件夹下创建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_MODULE”, “djtest.settings”) # # 设置默认的配置文件的环境变量DJANGO_SETTINGS_MODULE,该环境变量的名称,定义在django/conf/_init.py文件里面 # # ENVIRONMENT_VARIABLE = “DJANGO_SETTINGS_MODULE” os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'demo.settings') django.setup() app=Celery('demo') # app.config_from_object()方法从一个配置对象中加载配置 # # 配置对象可以是一个模块或者任何含有配置属性的对象。 # # 注意,任何先前设置的配置在调用config_from_object后都会被重新设置。如果你想添加额外的配置,你需要在调用这个方法之后。 app.config_from_object('django.conf.settings') app.autodiscover_tasks(lambda : settings.INSTALLED_APPS) #自动发现各个app里面创建的celery任务,可以创建多个任务
4.新建tasks.py
文件
在home
应用文件夹下:
from demo.celery import app @app.task def hello_world(): print("hello world")
5.编辑viewss.py
文件
#coding:utf-8 from django.shortcuts import render from django.http import HttpResponse from .tasks import hello_world def index(request): hello_world.delay() return HttpResponse(u"666") # Create your views here.
6.注册home应用
settings文件里修该以下内容
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'home', #添加应用的名称
]
7.配置urls.py文件设置路由
from django.contrib import admin from django.conf.urls import url from django.contrib import admin from home import views urlpatterns = [ url('admin/', admin.site.urls), url(r'^index/$',views.index) ]
8.启动Redis
运行命令redis-server 看到如下图就表示成功
9.启动Celery和Django
进入demo
工程下
启动Celery。
celery -A demo worker -l debug
结果图
启动Django:
python manage.py runserver
10.打开网页
打开浏览器,输入地地址 http://127.0.0.1:8000/index/ 看到如下界面表示配置成功。
运行http://127.0.0.1:8000/admin 会看到登录界面
参考资料:
https://www.cnblogs.com/keinlee/archive/2017/07/07/7131989.html
https://www.jianshu.com/p/f1f2cd1cd491