pdf文档 Django Q Documentation Release 0.7.12

415.46 KB 56 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
文档详细介绍了Django Q,一个基于Python multiprocessing的原生Django任务队列、调度和工作应用。其功能包括 multiprocessing worker pools、异步任务、定时和重复任务、加密和压缩包、失败和成功数据库或缓存、结果钩子、组和链،以及与Django Admin的集成等。Django Q支持多种消息代理如Redis、Disque、IronMQ、Amazon SQS等,并提供了丰富的配置选项如worker数量、超时设置、任务重试、压缩传输等。监控功能通过Stat对象提供任务队列大小、进程状态等信息。Admin界面则允许用户查看和管理成功任务、失败任务和队列任务。
AI总结
# 《Django Q Documentation Release 0.7.12》总结 ## 简介 Django Q 是一个基于 Python multiprocessing 的本地 Django 任务队列、调度器和工作应用,支持异步任务、定时任务、群集监控和多种消息代理。 ## 特性 - **核心功能**:支持多进程工作池、异步任务、定时和重复任务、加密和压缩包、失败和成功记录、结果钩子、组和链。 - **集成与兼容性**:集成 Django Admin,支持多实例部署、多集群监控,兼容 Redis、Disque、IronMQ、SQS、MongoDB 或 ORM。 - **测试与支持**:测试通过 Python 2.7 & 3.5,Django 1.8.8 & 1.9.1,支持 Rollbar。 ## 安装步骤 1. 使用 pip 安装:`pip install django-q` 2. 添加 `django_q` 到 `INSTALLED_APPS` 3. 运行迁移命令:`python manage.py migrate` 4. 选择并配置消息代理,安装相应客户端库。 ## 配置 通过 `Q_CLUSTER` 字典在 `settings.py` 中配置,详细选项包括: - **name**:项目名称,默认 'default' - **workers**:工人数,默认 CPU 核心数,可自定义 - **recycle**:工人处理任务数后回收,默认 500 - **timeout**:任务超时时间,默认无穷大 - **compress**:压缩任务包,默认 False - **save_limit**:成功任务保存数量,默认 250,失败任务始终保存 - **sync**:强制同步执行,默认 False - **queue_limit**:单集群内存任务数,默认 `workers**2` - **label**:Admin 页面标签,默认 'Django Q' - **catch_up**:调度补偿,默认 True ## 消息代理 支持的代理及其特点: - **Redis**:默认代理,atomic,需 redis-py,不支持收据,可使用现有 django_redis 连接。 - **Disque**:支持消息收据,速度优越,支持批量取队。 - **IronMQ**:HTTP 队列服务,支持批量取队,需 Cache 框架监控。 - **SQS**:稳定便捷,最大消息大小 256Kb,支持批量取队。 - **MongoDB/ORM**:灵活,适合开发环境。 ## 架构 - **任务签名**:任务在传输前被 pickle 序列化并签名,确保只有授权集群可执行。 - **代理功能**:确保至少一次交付,支持批量处理和任务确认。 ## Admin 集成 - **模型管理**:Admin 界面管理三类任务:成功、失败、排队。 - **功能**:支持任务详情查看、删除、搜索和筛选。 通过以上特性和配置,Django Q 提供了高效的任务管理和扩展能力,适用于各种 Django 应用场景。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 49 页请下载阅读 -
文档评分
请文明评论,理性发言.