epub文档 Django Q Documentation Release 0.9.0

507.64 KB 75 页 0 评论
语言 格式 评分
英语
.epub
3
摘要
文档介绍了Django Q,一个本地Django任务队列、调度器和工作应用,使用Python多进程。其功能包括异步任务、定时和重复任务、结果处理、错误报告及多种消息Broker支持。需要通过settings.py配置,包括工作者数量、超时设置、 Broker连接等。支持Rollbar和Sentry等错误报告插件。-installation步骤包括安装包、添加到Django应用、数据库迁移和配置Broker。文档还介绍了Django Q支持的Python和Django版本,并提供了错误处理和任务管理的详细信息。
AI总结
《Django Q Documentation Release 0.9.0》文档总结: ### 1. 项目概述 Django Q 是一个原生 Django 任务队列、调度器和工作器应用,使用 Python 多进程实现。其主要功能包括: - 支持多进程工作者池 - 异步任务、定时任务和重复任务 - 加密和压缩数据包 - 处理任务失败和成功,并支持将结果保存到数据库或缓存 - 提供钩子、组和链式调用 - 集成 Django Admin - 兼容多实例和集群监控 - 支持 Redis、Disque、IronMQ、SQS、MongoDB 或 ORM 等多种消息代理 - 集成 Rollbar 和 Sentry 错误报告 ### 2. 配置 Django Q 通过 `settings.py` 中的 `Q_CLUSTER` 字典进行配置,常见配置项包括: - `name`:用于区分项目,,默认为 `'default'`。 - `workers`:工作者数量,默认为宿主机 CPU 核心数。 - `daemonize_workers`:设置工作者是否为后台进程,,默认为 `True`。 - `timeout`:任务超时时间(单位:秒)。 - `compress`:是否启用数据压缩,,默认为 `True`。 - `save_limit`:成功任务的最大保存数量。 - `queue_limit`:队列的最大任务数。 - `redis`:Redis 配置,包括主机、端口和数据库。 ### 3. 安装 - 使用 pip 安装最新版本:`pip install django-q` - 在 `INSTALLED_APPS` 中添加 `django_q` - 运行迁移命令:`python manage.py migrate` - 选择并配置消息代理,安装相应的客户端库 - 启动 Django Q 集群:`python manage.py qcluster` ### 4. 兼容性 Django Q 测试通过的版本包括: - Python 2.7 和 3.6 - Django 1.8.18 LTS、1.11.9 和 2.0 - 部分功能可能与 Django 1.7、1.9 和 1.10 兼容,但不再正式测试。 ### 5. 依赖 - `django-picklefield`:用于在数据库中存储任务参数和结果。 - `arrow`:用于调度任务的时间计算。 - `blessed`:用于终端布局和监控。 ### 6. 错误报告 Django Q 支持插件式错误报告,当前实现了 Rollbar 和 Sentry 的集成。开发者可以通过 `Q_CLUSTER` 配置字典_passaddError_reporter_插件。 ### 7. 管理界面 Django Q 提供以下三种模型的 Admin 界面: - **成功任务**:显示所有成功执行的任务,支持通过名称、函数和组筛选,使用 `Success` 代理模型。 - **失败任务**:显示因错误未完成的任务,支持重新提交失败任务,使用 `Failure` 代理模型。 - **定时任务**:管理已安排的任务,可以通过名称、函数和组筛选。 ### 8. 其他功能 - 支持任务组和链式调用 - 提供任务状态监控和统计 - 支持任务结果的保存和查询 - 允许通过 `$ guard_cycle` 配置任务保护机制 - 支持通过 `cpu_affinity` 配置 CPU 树状调度 ### 总结 Django Q 是一个功能强大且灵活的任务队列和调度系统,能够与 Django 无缝集成,支持多种消息代理和错误报告工具,适合构建高并发和异步任务处理的应用场景。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 68 页请下载阅读 -
文档评分
请文明评论,理性发言.