django之使用celery

简介: django之使用celery
##########django之使用celery##############
1.首先在目录:/项目/applition/celery.py添加以下内容
import os

import django
from celery import Celery, platforms
from django.conf import settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE', "application.settings")
django.setup()

app = Celery(f"dvadmin")

app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
platforms.C_FORCE_ROOT = True
2.在:/项目applition/__init__.py添加以下内容
from .celery import app

__all__ = ['app']
3.然后在你自己的模块的tasks.py写任务
import time

from celery import shared_task

@shared_task
def task_demo(name):
    print(f"给{name}发邮件。。。。。")
    time.sleep(50)
    print(f"给{name}发邮件完成")
    return "OK"

4.在视图中调用此任务
result1 = task_demo.delay("wusen")
print(f"CELERY_ID:{result1.id}")

5.在窗口启动
celery  -A application worker  -l debug -P eventlet
相关文章
|
NoSQL 调度 Redis
33 Django高级 - celery
33 Django高级 - celery
37 0
|
3月前
|
消息中间件 存储 监控
Django后端架构开发:Celery异步调优,任务队列和调度
Django后端架构开发:Celery异步调优,任务队列和调度
64 1
|
3月前
|
消息中间件 NoSQL 调度
Django后端架构开发:Django 与 Celery 的深度集成
Django后端架构开发:Django 与 Celery 的深度集成
153 0
|
5月前
|
数据库 Python
【译】Celery文档3:在Django中使用Celery
【译】Celery文档3:在Django中使用Celery
|
JSON NoSQL Redis
Win11系统下使用Django+Celery实现异步任务队列以及定时(周期)任务(2020年最新攻略)
首先明确一点,celery4.1+的官方文档已经详细说明,该版本之后不需要引入依赖 django-celery 这个库了,直接用 celery 本身就可以了,就在去年年初的一篇文章[python3.7.2+Django2.0.4 使用django-celery遇到的那些坑](https://v3u.cn/a_id_54),中提到的一些bug,在今年早已不复存在,所以技术更新频率越来越快,本文详细阐述用新版Celery(4.4.2)来实现。
Win11系统下使用Django+Celery实现异步任务队列以及定时(周期)任务(2020年最新攻略)
|
监控 Python
Python编程:Django中使用Celery执行异步任务和定时任务
Python编程:Django中使用Celery执行异步任务和定时任务
225 0
|
Python
django celery 异步执行任务遇到的坑
django celery 异步执行任务遇到的坑
Django查看celery任务结果
异步任务执行的时候对于用户来说总是会出现再次尝试,第二次查看结果的时候如果能查到任务结果如何那就可以减少好多不必要的查询和重试。
|
Python NoSQL Redis
Django配置celery定时任务
安装celery 使用redis+celery的方式(使用的是阿里源,也可以选择不用) pip install -i https://mirrors.aliyun.com/pypi/simple/ -U "celery[redis]" 修改Django的settings配置文件 添加celery文件在app同级目录下添加一个文件夹,例:service_celery 在文件夹中添加celery.
|
存储 消息中间件 NoSQL
Django配置celery(非djcelery)执行异步任务和定时任务
所有演示均基于Django2.0 celery是一个基于python开发的简单、灵活且可靠的分布式任务队列框架,支持使用任务队列的方式在分布式的机器/进程/线程上执行任务调度。采用典型的生产者-消费者模型,主要由三部分组成: 消息队列broker:broker实际上就是一个MQ队列服务,可以使...
2484 0