Django Q Documentation
Release 0.2.2
188.69 KB
25 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .epub | 3 |
摘要 | ||
Django Q是一款本地Django任务队列和工作器应用,使用Python多进程实现。它支持异步任务、计划任务、失败任务处理、集群监控以及与Django Admin的集成。通过Redis作为消息代理,Django Q提供了任务分发、结果存储和集群管理等功能,确保高效的任务执行和管理。文档详细介绍了安装配置、任务异步执行、连接池管理、集群监控和任务调度等功能模块。 | ||
AI总结 | ||
# 《Django Q Documentation Release 0.2.2》总结
Django Q 是一个基于 Python 多进程的原生 Django 任务队列和工作器应用,支持异步任务、定时任务、Redis 连接池、数据库结果存储和 Django Admin 集成,旨在高效管理和执行任务。
## 核心功能
1. **任务管理**:支持通过 `async()` 方法快速创建任务,使用 `result()` 获取结果,并通过 hook 函数在任务完成后执行回调。
2. **任务调度**:支持一次性、每小时、每日、每周、每月、每季度和每年的定时任务,通过 `schedule()` 函数或 `Schedule` 模型管理。
3. **监控与管理**:集群监控可显示主机、ID、状态、工作进程池等信息,Admin 页面提供成功任务、失败任务和定时任务的管理界面。
4. **配置与扩展**:通过 `Q_CLUSTER` 字典配置集群参数,如名称、工作进程数、超时时间、压缩和加密选项等,可与 django-redis 集成以优化 Redis 连接。
## 安装与配置
1. **安装**:通过 pip 安装 `django-q`,并在 `INSTALLED_APPS` 中添加 `django_q`,执行迁移命令创建数据库表。
2. **配置**:在 `settings.py` 中配置 `Q_CLUSTER`,包括 Redis 连接参数,可选使用 django-redis 提供的连接池。
3. **依赖项**:支持 Python 2.7 和 3.4,Django 1.7.8 和 1.8.2,依赖 django-picklefield、redis-py 和 arrow 包。
## 使用方法
- **异步任务**:使用 `async()` 函数创建任务,示例:
```python
from django_q import async
task_id = async('math.copysign', 2, -2)
task_result = result(task_id)
```
- **任务调度**:使用 `schedule()` 函数或 `Schedule` 模型计划任务,示例:
```python
from django_q import schedule
schedule('math.copysign', 2, -2, hook='hooks.print_result', schedule_type=Schedule.DAILY)
```
## 监控与管理
- **监控**:通过 `python manage.py qmonitor` 启动监控,显示集群状态、进程数和运行状态。
- **Admin 页面**:管理成功任务、失败任务和定时任务,支持查看详情、删除和重新提交失败任务。
## 其他
- Django Q 使用 `SECRET_KEY` 加密任务包,确保数据安全。
- 支持 Redis 连接池优化,减少连接开销,可与 django-redis 集成。
该文档提供了 Django Q 的功能概述、安装指南、配置说明、使用方法和管理策略,全面覆盖了开发和部署所需的核心内容。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
18 页请下载阅读 -
文档评分