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)

最新文章

  1. Android和Linux应用综合对比分析
  2. Closest Binary Search Tree Value I & II
  3. hdu5442(2015长春赛区网络赛1006)后缀数组+KMP /最小表示法?
  4. Collection中的排序
  5. Struts2中的类型转换
  6. CSS display 属性详解
  7. C#中静态方法和非静态方法的区别(二)
  8. Web服务图片压缩,nginx+lua生成缩略图
  9. STL集合容器set按照由小到大或者由大到小的顺序存放元素
  10. 阿里云ECS每天一件事D6:安装nginx-1.6.2
  11. 开博近一年的感想 by 程序员小白
  12. 中文分词 sphni与scws
  13. 一次ES故障排查过程
  14. CSS---通向臃肿的道路(关于 “separation of concerns” (SoC)的原则)
  15. webdriver.chrome()禁止加载图片
  16. swiper 父级元素display:none 之bug
  17. char* 与 string 互转
  18. crontab计划不执行问题
  19. 程序员工作 996 生病 ICU ?
  20. Loadrunner常用目录、组成部分及负载测试流程

热门文章

  1. C++泛型编程-扩展
  2. pwrite,pread
  3. strconv
  4. leetcode解题报告(6):Remove Duplicates from Sorted List
  5. [Luogu] 被污染的河流
  6. Python使用grequests并发发送请求
  7. 初次Java web项目的建立以及与数据库的连接
  8. CentOS 安装 MySQL PDO 扩展
  9. 表单 Flask-WTF - 校验器
  10. 牛顿法与拟牛顿法(三) DFP算法