搜索

pdf文档 Django Q Documentation Release 0.7.11

412.45 KB 54 页 0 下载 50 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
文档详细介绍了Django Q的安装、配置、功能和使用方法。Django Q是一个用于在Django项目中处理异步任务的扩展,支持多种消息队列(如Redis、Disque、MongoDB等),并提供了任务调度、集群管理和监控等功能。文档强调了Django Q的兼容性,支持Python 2.7和3.5,以及Django 1.7.10和1.8.5。配置部分包括 workers、recycle、timeout 等参数,用户可以根据项目需求进行调整。
AI总结
### Django Q 0.7.11 文档总结 #### 1. 安装 - 使用 `pip` 安装 Django Q: ```bash $ pip install Django-q ``` - 将 `django_q` 添加到 `INSTALLED_APPS` 中。 - 运行数据库迁移: ```bash $ python manage.py migrate ``` #### 2. 配置 - 配置文件 `settings.py` 中添加 `Q_CLUSTER` 字典,设置以下参数: - `name`: 项目名称,默认为 `default`。 - `workers`: 工作进程数,默认为 CPU 核心数。 - `recycle`: 工作进程处理任务数上限,默认为 500。 - `timeout`: 任务超时时间,默认为 `None`。 - `broker`: 消息代理配置,如 Redis 或 MongoDB。 #### 3. 消息代理 - 支持多种消息代理: - Redis:默认 broker,性能最佳。 - Disque:高可靠性队列,基于 Redis。 - MongoDB:持久化消息队列。 - SQS:使用 `boto3`。 - IronMQ:使用官方 Python 绑定。 #### 4. 任务 - 异步任务:使用 `async()` 执行任务,支持超时、缓存和结果钩子。 - 同步测试:通过 `sync=True` 选项进行同步测试。 - 任务分组:通过 `group` 参数组织任务,便于管理和监控。 #### 5. 调度 - 支持定时和重复任务: - 使用 `schedule()` 函数设置任务的运行时间。 - 支持 `ONCE` 和 `INTERVAL` 类型。 #### 6. 集群 - 集群管理: - 支持多集群监控。 - 停止过程:确保任务队列和结果队列清空,避免数据丢失。 #### 7. 监控 - 监控功能: - 显示集群状态、任务队列和结果队列。 - 提供停止和重启集群的功能。 #### 8. 管理页面 - 集成 Django admin: - 成功任务:显示执行成功的任务,支持过滤和搜索。 - 失败任务:显示执行失败的任务,支持重试。 - 调度任务:管理定时任务,支持创建、编辑和删除。 #### 9. 兼容性 - 支持 Python 2.7 和 3.5。 - 支持 Django 1.7.10 和 1.8.5。 - 已知问题: - OS X:不支持 `multiprocessing.Queue.qsize()` 和 CPU 亲和性。 - Windows:不支持集群的进程 fork。 #### 10. 示例 - 发送邮件: ```python from django_q.tasks import async, schedule async('django.core.mail.send_mail', 'Welcome', msg, 'from@example.com', [user.email]) schedule('django.core.mail.send_mail', 'Follow up', msg, 'from@example.com', [user.email], schedule_type=Schedule.ONCE, next_run=timezone.now() + timedelta(hours=1)) ``` - 异步任务分组: ```python for i in range(100): async('math.frexp', i, group='frexp', cached=True, broker=broker) result_group('frexp', wait=50, count=100, cached=True) ``` ### 总结 Django Q 是一个功能强大的任务队列和调度工具,支持多种消息代理和集群管理,提供丰富的监控和管理功能。通过简洁的配置和灵活的任务处理方式,能够高效地处理异步任务和定时任务。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 47 页请下载阅读 -
文档评分
请文明评论,理性发言.