celery的安装和基本使用
本文介绍了如何安装和基本使用celery,一个Python的分布式任务队列。
安装celery
首先使用pip命令安装celery和它的相关依赖:
pip install "celery[redis,auth,msgpack]"
如下图所示。

创建任务
在项目目录dx_movie下创建一个名为celery的文件夹,在该文件夹下创建一个Python文件tasks.py。在tasks.py文件中导入celery并创建一个应用:
from celery import Celery
app = Celery('tasks', backend='redis://127.0.0.1', broker='redis://127.0.0.1')
@app.task
def add(x, y):
return x + y
如下图所示。

启动redis
tasks.py中指定了backend使用redis, 所以,我们需要先来启动redis。启动命令参照上一节。

启动celery worker
接下里,使用命令启动Celery的工作进程(worker):
(venv) andy@andy celery % celery -A tasks worker -l INFO
这个命令是用来启动Celery的工作进程(worker)的,它包含几个关键部分,解释如下:
celery: 这是启动Celery命令行工具的命令。-A tasks:-A或--app参数指定Celery应用的名称。在这个例子中,tasks表示Celery应用的模块或包名。这意味着Celery将会在tasks模块或包中寻找配置,包括任务等。worker: 这个参数告诉Celery要启动工作进程。工作进程负责执行异步任务。-l INFO:-l或--loglevel参数用来设置日志级别。INFO级别意味着工作进程会记录信息级别的日志,这包括任务执行的信息,如任务接收、任务执行结果等。
综上所述,命令celery -A tasks worker -l INFO的含义是:启动Celery,使用tasks模块或包作为Celery应用来配置工作环境,启动工作进程,并设置日志级别为信息级别,以便于监控任务的执行情况。
运行结果如下所示。

调用任务
在celery文件夹下创建一个名为run_tasks.py的Python文件,编写以下代码来调用celery任务:
from tasks import add
result = add.delay(4,4)
print(f'Is task ready: {result.ready()}')
run_result = result.get(timeout=5)
print(f'task result: {run_result}')
运行结果如下图所示。

以上就是使用celery的基本步骤。通过创建任务、启动celery worker,并调用任务来执行,在然后获取结果。
【大熊课堂精品课程】
Python零基础入门动画课: https://www.bilibili.com/cheese/play/ss7988
Django+Vue:全栈开发: https://www.bilibili.com/cheese/play/ss8134
PyQT6开发桌面软件: https://www.bilibili.com/cheese/play/ss12314
Python办公自动化: https://www.bilibili.com/cheese/play/ss14990
Cursor AI编程+MCP:零基础实战项目课: https://www.bilibili.com/cheese/play/ss105194189
Pandas数据分析实战: https://www.bilibili.com/cheese/play/ss734522035
AI大模型+Python小白应用实战: https://www.bilibili.com/cheese/play/ss3844