搜索

pdf文档 Django Q Documentation Release 0.7.10

406.50 KB 52 页 0 下载 77 浏览 0 评论 0 收藏
语言 格式 评分
英语
.pdf
3
摘要
Django Q 是一个基于 Django 的任务队列、调度和工作器应用程序,使用 Python 多进程处理任务。文档详细介绍了其功能,包括任务队列、异步任务、调度、结果存储和监控。主要内容涵盖安装、配置、依赖项管理、消息代理选择以及与 Django 的集成。Django Q 支持多种消息代理(如 Redis、Disque、IronMQ、SQS 和 MongoDB),并提供任务成功和失败的记录功能。文档还提到了兼容性问题,包括对不同操作系统和 Python/Django 版本的支持。
AI总结
### Django Q 0.7.10 文档总结 #### 1. 安装 - 使用 `pip` 安装 Django Q: ```bash $ pip install Django-q ``` - 将 `django_q` 添加到项目 `INSTALLED_APPS`: ```python INSTALLED_APPS = ( # 其他应用 'django_q', ) ``` - 运行 Django 迁移以创建数据库表: ```bash $ python manage.py migrate ``` #### 2. 配置 - 配置通过 `Q_CLUSTER` 字典在 `settings.py` 中完成,示例: ```python Q_CLUSTER = { 'name': 'myproject', 'workers': 8, 'recycle': 500, 'timeout': 60, 'compress': True, 'save_limit': 250, 'queue_limit': 500, 'cpu_affinity': 1, 'redis': { 'host': '127.0.0.1', 'port': 6379, 'db': 0, } } ``` - 配置参数包括: - `workers`: 工人数量,默认为 CPU 核心数。 - `recycle`: 工人处理任务数达到后 recycle。 - `timeout`: 任务超时时间,默认无限制。 - `cpu_affinity`: 设置 CPU 亲和性。 #### 3. 消息队列(Broker) - 支持多种消息队列: - **Redis**: 默认 broker,性能最佳。 - **Disque**: 高可靠性,适合生产环境。 - **IronMQ**: 基于云的消息队列。 - **SQS**: 使用 AWS SQS。 - **MongoDB**: NoSQL 数据库作为 broker。 - **ORM**: 使用 Django ORM 存储任务。 - 安装依赖: ```bash $ pip install redis hiredis boto3 iron-mq pymongo ``` #### 4. 功能特点 - **异步任务**: 使用 multiprocessing 实现。 - **计划任务**: 支持定时和重复任务。 - **结果存储**: 结果可存储在数据库或缓存中。 - **任务分组**: 支持任务分组和钩子。 - **Django Admin 集成**: 通过 admin 界面管理任务。 - **多集群监控**: 监控多个集群的状态。 - **平台兼容**: 支持多平台和 PaaS。 #### 5. 兼容性 - **Python**: 测试通过 Python 2.7 和 3.5。 - **Django**: 支持 Django 1.7.10 和 1.8.5,兼容 1.9。 - **操作系统**: 支持 Linux、Windows 和 OS X,部分功能在 Windows 上受限。 #### 6. 监控与管理 - **终端布局**: 使用 `blessed` 库提供终端布局。 - **Admin 界面**: 提供成功、失败和计划任务的管理。 - 成功任务:可搜索和删除。 - 失败任务:可重试失败任务。 - 计划任务:创建、编辑和删除。 #### 7. 其他注意事项 - **依赖管理**: 文档要求使用最新版本的依赖库,并参考 requirements 文件。 - **兼容性问题**: 如遇不兼容,请提交 GitHub 问题。 总结:Django Q 是一个功能强大的任务队列和调度工具,支持多种消息队列和平台,适合需要异步任务处理和高可靠性的项目。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 45 页请下载阅读 -
文档评分
请文明评论,理性发言.