celery异步任务
2024-09-05 05:43:43
1.安装 pip install celery
2.创建celery_tasks文件夹,创建config配置文件和main文件
# 在config.py文件中配置中间人broker地址信息 - redis数据库信息
broker_url = "redis数据库地址信息" # 例如 broker_url = "redis://127.0.0.1:6666/3" # 在main.py文件中创建Celery对象并加载配置
from celery import Celery
celery_app = Celery("name") # name为对象名,随意
celery_app.config_from_object("celery_tasks.config") # 加载配置
celery_app.autodiscover_tasks(['celery_tasks.sms']) # 调用autodiscover_tasks方法使work在启动时自动发现任务函数
3. 在celery_tasks文件夹下新建功能模块,例如想添加短信验证任务就新建mail文件夹,然后在文件夹下新建tasks.py,在tasks中定义任务函数
@celery_app.task(name="send_sms_codes")
def send_sms_codes(a, b):
print("OK %s, %s" % (a, b)
4.启动worker工作进程
在terminal中运行,且路径在celery_tasks的上一级,命令:celery -A celery对象所在文件 worker -l 日志级别
xxx/project$ celery -A celery_tasks.main worker -l info
5.使用功能模块
from celery_tasks.sms.tasks import send_sms_codes
send_sms_codes.delay(*args)
最新文章
- Android和Linux应用综合对比分析
- Closest Binary Search Tree Value I &; II
- hdu5442(2015长春赛区网络赛1006)后缀数组+KMP /最小表示法?
- Collection中的排序
- Struts2中的类型转换
- CSS display 属性详解
- C#中静态方法和非静态方法的区别(二)
- Web服务图片压缩,nginx+lua生成缩略图
- STL集合容器set按照由小到大或者由大到小的顺序存放元素
- 阿里云ECS每天一件事D6:安装nginx-1.6.2
- 开博近一年的感想 by 程序员小白
- 中文分词 sphni与scws
- 一次ES故障排查过程
- CSS---通向臃肿的道路(关于 “separation of concerns” (SoC)的原则)
- webdriver.chrome()禁止加载图片
- swiper 父级元素display:none 之bug
- char* 与 string 互转
- crontab计划不执行问题
- 程序员工作 996 生病 ICU ?
- Loadrunner常用目录、组成部分及负载测试流程