| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
Celery 是一个简单、灵活且可靠的分布式任务队列系统,用于处理大量消息并支持实时处理和任务调度。文档主要介绍了 Celery 4.0.1 的新功能、改进和修复,包括安全性增强、新功能如类任务注册、性能优化以及配置和兼容性调整。 | ||
| AI总结 | ||
《Celery v4.0.1 文档》总结:
### 核心更新与新功能
1. **版本发布**
- 发布日期:2016年12月8日
- 维护者:Ask Solem
2. **依赖项更新**
- 现在依赖于 `billiard 2.7.3.18`。
3. **新功能**
- **队列高可用策略**:新增 `CELERY_QUEUE_HA_POLICY` 设置,用于设置 RabbitMQ 队列的默认高可用策略。
- **子任务功能**:新增 `Task.subtask_from_request` 方法,用于从当前请求创建子任务。
- **静态分析工具支持**:支持使用 PyDev/PyCharm/pylint 等静态分析工具。
- **毫秒精度调度**:ETA 调度器现在支持毫秒精度(Issue #1040)。
- **Celery 命名格式**:新增任务节点格式 `name@host`。
4. **重要改进**
- **日志目录创建**:`generic_init.d` 脚本新增 `CELERY_CREATE_DIRS` 配置,确保日志和 PID 目录始终创建(Issue #1045)。
- **Py3.2 兼容性**:修复了 Kombu 导入问题(Issue #1034)。
- **任务结果过期设置**:弃用 `CELERY AMQP TASK RESULT EXPIRES`,推荐使用 `CELERY TASK RESULT EXPIRES`。
5. **安全更新**
- **默认配置修复**:默认 `accept_content` 设置不再允许反序列化,默认仅支持 JSON 格式。建议配置为:`app.conf.accept_content = ['json']`( CELERYSA-0003)。
### 重要修复
1. **任务与结果**
- 修复了 `results.get_many` 方法不尊重超时参数的问题(Issue #3646)。
- 修复了 `Task.apply_async` 对 `args=None` 的处理问题(Issue #1459)。
- 修复了 `celery.control.pool` 命令未将字符串参数转换为整数的问题。
2. **队列与消费者**
- 固定 Unicode 错误(Issue #427)。
- 修复了心跳问题(Heartbeat)在 Eventlet/gevent 池中的问题(Issue #3649)。
3. **内部优化**
- 模块重命名:
- `celery.task.trace` → `celery.app.trace`
- `celery.concurrency.processes` → `celery.concurrency.prefork`
- 移除了未使用的全局实例 `celery.events.state.state`。
### 兼容性与注意事项
1. **兼容性**
- 不再支持 Python 2.5。
- 最后一个版本默认启用 Pickle 反序列化。
2. **任务开发**
- 不推荐使用旧的任务基类,新的任务装饰器继承自新基类。
- 非抽象任务类不再支持新 API,仅用于旧版本兼容。
3. **文档迁移**
- 开发文档已迁移至 Read The Docs,新地址:`http://docs.celeryproject.org/en/master`。
### 总结
Celery 4.0.1 版本在功能、性能和安全性上均有重要改进,新增了多项实用功能,修复了多个已知问题,并优化了内部结构。建议用户升级至该版本以获得更好的使用体验。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
698 页请下载阅读 -
文档评分














Celery v4.0.1 Documentation
Celery 1.0 Documentation