- 构成
- 代理人broker:指定队列存储到哪里去
- 工人worker:从队列中取任务执行,本质就是一个新进程、线程、协程
- 队列queue:将任务放到队列中,逐个执行
- 任务task:耗时的代码
- 安装celery:pip install celery
- 实现过程:
- 新建celry_tasks包,用于写任务的代码
- 新建main.py,创建celery对象
- 新建config.py,指定配置,当前为指定rabbitmq为队列
- 新建sms包,新建tasks.py,在这个文件中写任务代码
- 定义方法send_sms,剪切耗时代码
- 添加装饰器@app.task()
- 在main.py中识别这个任务
- 调用:任务.delay(参数)
- 新进程:celery -A celery_tasks.main worker -l info |
|