Real Python · Martin Breuss
Asynchronous Tasks With Django and Celery
能在一个 Django 项目中接入 Celery 与 Redis,把耗时任务改为异步执行并验证结果。
Python
- 难度
- 见前置条件
- 形式
- 实践教程
- 语言
- en
- 规模
- 15 个课节
- 内容费用
- 免费
- 动手
- 需要动手环境
使用限制
学习正文可直接在网页阅读,无需登录;跟做练习需自备本地环境与 Redis。
- 练习与作业
- 示例代码下载包(原文说可免费下载)
学完你能
- 说明 Celery 的分布式任务队列定位,以及它与消息队列、消息中间件的区别
- 区分 Celery worker 与 Celery beat 各自的职责
- 为 Django 项目安装并配置 Celery,指定 Redis 作为 broker 和结果后端
- 把视图中的同步耗时逻辑重构为 Celery 任务,并用 .delay() 或 .apply_async() 调用
- 启动 worker 并测试异步任务是否正常执行
- 了解 Celery 不支持 Windows 及可替代的任务队列选型思路
适合你吗
适合
适合已有 Django 基础、想把邮件发送等耗时操作移出请求周期的 Python 后端开发者。
暂不适合
不适合完全没有 Django 或 Python Web 基础的学习者,也不覆盖 Windows 环境下的 Celery 部署。
需要先会
需要熟悉 Python 基础语法,以及 Django 项目的基本结构与视图写法。文章面向从未在 Django 应用里用过 Celery 的读者。
课程特点
- 内容侧重
- 侧重实践应用
- 练习与项目
- 把示例项目中的发送邮件函数改造成 Celery 任务,对比改造前后的响应时间;文章还提示可以用 RabbitMQ 替换 Redis 作为 broker 作为挑战。
- 学习时长
- 15 个课节原站未给出统一学习时长;实际用时取决于已有基础。
- 内容费用
- 免费节选中可直接读到教程正文与完整目录,示例代码标注“download free”,未提示本文内容需付费;页面上的“Unlock All Content”属站点会员入口,不影响本文。
来源与使用须知
- 原始资源
- Real Python
- 收录时间
- 本站首次收录 2026-10-20
- 指南参考
- 课程主页
版权与转载
- 课程材料未标明许可:仅供个人学习,转载、修改或商用前请先联系原作者。
- 本站只提供原始链接和学习指南,不转载、不镜像课程材料;引用时请注明原作者与出处。