前言
celery是一个基于python开发的简单、灵活且可靠的分布式任务队列框架, 是一个分布式队列的管理工具, 可以用 Celery 提供的接口快速实现并管理一个分布式的任务队列.。它采用了典型的生产者-消费者模型,主要由三部分组成:
-
消息队列broker:broker实际上就是一个MQ队列服务,可以使用Redis、RabbitMQ等作为broker;
-
处理任务的消费者workers:broker通知worker队列中有任务,worker去队列中取出任务执行,每一个worker就是一个进程;
-
存储结果的backend:执行结果存储在backend,默认也会存储在broker使用的MQ队列服务中,也可以单独配置用何种服务做backend;
celery安装
pip install celery
celery 简单运行
创建文件
安装完成后在自己的APP下创建一个tasks.py文件,名字最好就是tasks,不要随意更改,有多个app则每个app下都可以创建一个task.py(前提是有需要的话)目录结构如下,本文已django为例:
my_demo
|--func_app
|-- admin.py
|-- apps.py
|-- __init__.py
|-- models.py
|