pdf文档 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 页请下载阅读 -
文档评分
请文明评论,理性发言.