Django Q Documentation
Release 0.3.6
198.62 KB
35 页
0 下载
269 浏览
0 评论
0 收藏
所属分类:
后端开发 / Python / Django
| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .epub | 3 |
| 摘要 | ||
Django Q 是一个基于 Python 多进程的 Django 任务队列和工人应用,支持异步任务、计划任务和重复任务。文档详细介绍了其功能、安装配置、任务管理、集群监控以及与 Redis 的集成。主要内容包括任务队列的使用、多进程池的管理、任务调度配置、结果保存机制以及与 Django 管理命令的集成。 | ||
| AI总结 | ||
《Django Q Documentation Release 0.3.6》总结:
### 1. 简介
Django Q 是一个基于 Django 的任务队列和工人应用,使用 Python 多进程实现。
### 2. 核心功能
- **多进程池**:管理多个工进程。
- **异步任务**:支持异步任务执行。
- **计划与重复任务**:支持定时和重复任务。
- **加密与压缩**:任务包加密和压缩。
- **结果数据库**:记录任务成功与失败结果。
- **钩子函数**:任务执行后的回调。
- **Django Admin 集成**:通过 Django 管理界面管理任务。
- **多集群监控**:支持多集群管理。
- **Redis 支持**:使用 Redis 作为任务队列后端。
- **兼容性**:支持 Python 2/3 和 Django 1.7.9/1.8.3。
### 3. 安装与配置
- 使用 pip 安装:`pip install Django-q`
- 添加到 Django 项目:`INSTALLED_APPS`
- 运行迁移:`python manage.py migrate`
- 配置 Redis 信息:`Q_CLUSTER` 参数包括 `name`、`workers`、`timeout`、`redis` 等。
### 4. 集群管理
- 启动集群:`python manage.py qcluster`
- 停止集群:使用 `ctrl-c` 或信号。
- 监控集群状态:显示集群 ID、状态、工进程数量等。
### 5. 任务处理
- **成功任务**:记录执行成功的任务,支持查看和删除。
- **失败任务**:记录执行失败的任务,支持重试。
- **计划任务**:通过 Django Admin 或代码创建和管理。
- **重复任务**:设置任务执行次数上限。
### 6. 管理命令
- 包装 Django 管理命令为任务:`tasks.py` 中定义命令函数。
- 示例:`schedule('tasks.clear_sessions_command', schedule_type='H')`
### 7. 优化建议
- **连接池**:避免 Redis 连接耗尽,建议复用连接。
- **异步任务**:使用 `async()` 函数,支持 `redis` 参数。
### 8. 监控面板
- 显示任务队列、结果队列、 reincarnations、uptime 等指标。
- 使用 `Stat.get_all()` 获取集群状态。
### 9. 示例应用
- **发送邮件**:异步发送欢迎邮件和后续提醒邮件。
- **信号处理**:在 Django 模型信号中触发异步任务。
### 10. 总结
Django Q 提供了一个强大的任务队列和集群管理工具,适用于异步任务处理、计划任务和分布式计算。通过 Redis 和多进程实现高性能和可靠性,支持 Django 管理界面和命令行工具,适合需要处理高并发任务的 Django 项目。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
28 页请下载阅读 -
文档评分














Django Q Documentation
Release 0.4.6