搜索

pdf文档 Django Q Documentation Release 1.3.6

452.10 KB 62 页 0 下载 155 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
文档详细介绍了Django Q 1.3.6版本的功能、安装和配置方法。Django Q是一个用于处理异步任务、调度任务和集群管理的工具,支持多种消息队列如Redis、Disque、IronMQ等。文档还涵盖了任务分组、迭代器、链、调度、监控以及错误处理等功能,并提供了如何集成到Django项目中的指导。
AI总结
# Django Q 1.3.6 文档总结 ## 1. 特性 Django Q 是一个用于在 Django 项目中处理异步任务的工具,支持以下功能: - **多进程工作池**:支持 multiprocessing 池,用于异步任务处理。 - **异步任务**:通过 `async_task` 函数实现异步任务。 - **调度、cron 和重复任务**:支持定时任务和重复任务。 - **结果存储**:支持将结果存储在数据库或缓存中。 - **结果钩子、组和链**:支持任务组和链,便于任务组合。 - **Django Admin 集成**:提供管理页面用于监控和管理任务。 - **多集群监控**:支持多集群监控。 - **多种 Broker 支持**:支持 Redis、Disque、IronMQ、SQS、MongoDB 或 Django ORM 作为消息队列。 - **Rollbar 和 Sentry 支持**:支持集成 Rollbar 和 Sentry 进行错误报告。 ## 2. 安装 - 使用 pip 安装最新版本: ```bash $ pip install Django-q ``` - 将 `Django_q` 添加到项目 `settings.py` 的 `INSTALLED_APPS` 中。 ## 3. 依赖项 - **boto3**:用于 AWS SQS: ```bash $ pip install boto3 ``` - **iron-mq**:用于 IronMQ Broker: ```bash $ pip install iron-mq ``` - **pymongo**:用于 MongoDB Broker: ```bash $ pip install pymongo ``` - **Redis**:默认 Broker,无需额外安装。 - **Disque**:基于 Redis 的可靠队列,支持 Alpha 版本。 - **MongoDB**:支持作为持久化消息队列。 - **rollbar**:用于错误通知: ```bash $ pip install rollbar ``` - **croniter**:用于解析 cron 表达式: ```bash $ pip install croniter ``` ## 4. 配置 Django Q 的配置通过 `Q_CLUSTER` 字典完成,支持以下选项: - **broker_class**:自定义 Broker 类。 - **bulk**:设置每轮获取的消息数量,提高性能。 - **poll**:设置队列轮询间隔(仅适用于 ORM 和 MongoDB Broker)。 - **cache**:指定用于统计的缓存名称。 - **cached**:启用或禁用缓存存储结果。 - **scheduler**:启用或禁用调度器。 - **error reporter**:配置错误报告器(如 Rollbar 或 Sentry)。 - **save limit**:限制成功任务的存储数量,默认为 250。 ## 5. 错误处理 Django Q 提供了一个可插拔的错误报告系统,支持 Rollbar 和 Sentry。错误报告器通过 `Q_CLUSTER` 配置启用。 ## 6. 信号 Django Q 在任务生命周期中发出信号: - `pre_enqueue`:任务入队前。 - `pre_execute`:任务执行前。 ## 7. 兼容性 Django Q 支持 Python 3.7 和 3.8,以及 Django 2.2.x 和 3.1.x。 ## 8. 示例 以下是一个简单的异步任务示例: ```python from django_q.tasks import async_task, fetch # 创建一个同步任务 task_id = async_task('my.buggy.code', sync=True) # 获取任务结果 task = fetch(task_id) if not task.success: print(f'An error occurred: {task.result}') ``` ## 9. 总结 Django Q 是一个功能强大的工具,适用于在 Django 项目中处理异步任务。通过灵活的配置和丰富的功能,用户可以轻松实现任务调度、错误监控和多集群管理。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 55 页请下载阅读 -
文档评分
请文明评论,理性发言.