Django Q Documentation
Release 0.7.18
418.08 KB
56 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
Django Q是一个本地Django任务队列、调度器和工作器应用,使用Python多处理。它支持异步任务、定时和重复任务、加密和压缩包、数据库或缓存失败和成功存储,以及与Django Admin的集成。安装步骤包括使用pip安装、添加到INSTALLED_APPS、运行迁移命令和配置消息代理。Django Q支持Redis、Disque、IronMQ、SQS、MongoDB和ORM等多种消息代理,并与Python 2.7和3.5、Django 1.8.13和1.9.7兼容。文档还详细介绍了配置选项,如workers、timeout、compress、save_limit等,并提供了监控功能,包括任务队列、结果队列、worker池和状态监控。 | ||
AI总结 | ||
《Django Q Documentation Release 0.7.18》总结
Django Q 是一个基于 Python 多进程的原生 Django 任务队列、调度器和工作应用,支持异步任务、定时任务和重复任务。以下是其核心内容的总结:
---
### 1. **主要特性**
- **多进程工作池**:支持多 worker 处理任务。
- **异步任务**:通过 `async()` 函数运行任务。
- **定时和重复任务**:支持定时执行和重复执行的任务。
- **加密和压缩**:任务包加密和压缩传输。
- **结果存储**:支持将任务失败或成功结果存储到数据库或缓存。
- **钩子和链式任务**:提供结果钩子、任务组和链式执行功能。
- **Django Admin 集成**:可在 Admin 界面管理任务。
- **多集群监控**:支持多集群运行和监控。
- **多种消息代理**:支持 Redis、Disque、IronMQ、SQS、MongoDB 等。
- **Rollbar 支持**:集成 Rollbar 进行错误报告。
---
### 2. **安装**
- 使用 pip 安装:`pip install django-q`
- 添加 `django_q` 到 `INSTALLED_APPS`。
- 运行迁移命令:`python manage.py migrate`
- 配置消息代理并安装对应的客户端库。
---
### 3. **配置**
配置通过 `settings.py` 中的 `Q_CLUSTER` 字典进行,常用配置项包括:
- `workers`:集群 worker 数量,默认为 CPU 核数。
- `timeout`:任务超时时间,默认为 60 秒。
- `retry`:代理等待任务完成的时间,默认为 60 秒。
- `compress`:是否压缩任务包,默认为 `False`。
- `save_limit`:保存成功任务的数量,默认为 250。
- `queue_limit`:单个集群内存中保留的任务数量, 默认为 `workers**2`。
---
### 4. **架构**
- **任务加密**:任务在发送之前用 Django 的签名模块加密,确保只有拥有相同密钥的集群能解密。
- **消息代理**:代理负责接收任务并分发给集群,支持至少一次 доставки。
---
### 5. **监控**
提供多种监控指标,包括:
- **任务队列**:队列中任务数量。
- **结果队列**:结果存储队列长度。
- **重新创建次数**:Worker 重启次数,用于诊断任务错误或超时。
- **集群状态**:支持 `Starting`、`Idle`、`Working`、`Stopping` 和 `Stopped` 等状态。
---
### 6. **版本兼容性**
- 支持 Python 2.7 和 3.5。
- 支持 Django 1.8.13 和 1.9.7。
---
Django Q 是一个功能强大且灵活的任务队列系统,适合分布式任务处理和调度场景。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
49 页请下载阅读 -
文档评分