celery异步任务和定时任务(写的很乱,只给自己用)

本文介绍了如何在Django中使用Celery进行异步任务和定时任务的设置。通过`python manage.py celery worker --settings=settings`启动worker执行任务,如`cal.delay(2, 3)`实现异步调用。获取执行结果可参考相关博客。至于定时任务,可以使用`celery beat`,但`periodic_task`注解已废弃,建议采用基于数据库的方法来管理任务,这种方式更便于任务的修改和管理。" 9144737,1471127,光纤线连接与接法详解,"['网络连接', '光纤技术', '硬件配置', '系统管理', '网络基础']
摘要由CSDN通过智能技术生成

 

django 启动celery

python manage.py celery worker --settings = settings

 

运行上面的命令,就相当于加载了你task文件里面的内容,你就可以调用了

加入task里面有一个cal(x,y)函数

那么使用cal.delay(2,3) 就可以异步执行

 

获取执行结果:

https://www.cnblogs.com/piperck/p/5391128.html

 

启动定时任务命令如下:

python manage.py celery beat --loglevel=info

 

 

关于定时任务, 写法如下:

从celery导入periodic_task这样一个注解,然后加在函数上面,里面一定要设置run_every属性,下面的是每5秒设置一次

但是这个注解已经是deprecated了,所以还是不用的好 

# coding: utf-8
from celery import task
from celery.task import periodic_task
from blueapps.utils.logger import logger # 这个东西可以不用,就是一个打印的功能
import datetime
import time
@task
def cal_sum(x,y):
    time.sleep(3)
    logger.error('执行了简单的加法')
    return x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值