pdf文档 Celery 4.4.2 Documentation

2.85 MB 797 页 0 评论
语言 格式 评分
英语
.pdf
3
摘要
文档详细介绍了Celery 4.4.2版本的更新内容,包括新功能、改进和修复。主要更新包含:新增对Python 3.8和PyPy的支持,改进Prefork池的性能,增强任务日志记录,优化RabbitMQ和Redis的支持,以及修复多个已知问题。此外,文档还提供了升级指南,强调了配置更改和移除的旧功能,提醒用户在升级前仔细阅读重要说明。
AI总结
《Celery 4.4.2 Documentation》文档总结如下: --- ### Celery 4.4.2 主要更新与改进 #### 1. **核心功能与改进** - 回调函数(errbacks)更名为 `callback` 和 `errback`,现在接受单个标量值 instead of a list. - 修复了在Windows上终止任务时未终止子进程的问题,确保任务及所有子进程同时终止。 - Cassandra后端现在通过TTL(生存时间)来过期结果。 - `celeryev` 会在与broker连接丢失时尝试重新建立连接。 - `send_task` 在与 `CELERY_ALWAYS_EAGER` 结合使用时会发出警告。 - `apply_async` 在启用 `CELERY_ALWAYS_EAGER` 时会将原始关键字参数转发到 `apply` 方法。 #### 2. **命令行与工具改进** - `celerybeat` 现在每3分钟同步一次,而不仅仅在关闭时同步。 - `celeryctl` 的 `--expires` 和 `--eta` 参数现在支持ISO-8601格式的字符串。 - `celeryctl` 如果没有收到回复会退出,状态码为EX_UNAVAILABLE(69)。 - `TaskSetResult.delete()` 新增,用于删除已保存的TaskSet结果。 #### 3. **性能与兼容性** - 支持Python 3.8和PyPy 3.6-7.2。 - 不再支持Python 2.6,2.4的安全修复已回-port到2.3。 - 优化了Prefork池,改善了任务日志记录和内存限制。 - 罗盘MQ支持优先级队列,Queue扩展支持,读写broker URL分开配置。 #### 4. **Bug修复** - 修复了`celeryev` 创建pidfile重复的问题。 - 修复了批量任务失败时无报错的问题。 - 修复了Unicode解码错误。 - 修复了Mac上ResultSet.iterate不返回结果的问题。 - 修复了在硬时间限制超时时Worker可能挂起的问题。 - 修复了Remote Control命令 `add_consumer` 在队列已被消费时无操作的问题。 #### 5. **新功能与变化** - `celeryd_detach` 现在通过命令行传递配置。 - 监控工具现在正确处理未知事件,支持用户自定义事件。 - 任务池和结果后端(如Redis、DynamoDB、S3)功能增强。 - 任务注释(Task Annotations)支持速率限制(Rate Limit)。 --- ### 升级指南 - **重要兼容性变化**: - 不再支持Python 2.6。 - 移除了旧有的命令行程序。 - Redis事件不再兼容旧版本。 - Redis队列优先级顺序更改。 - 任务消息协议更改为新协议。 - 配置文件设置名更改为全小写,旧的配置文件仍兼容。 - 任务序列化默认改为JSON。 - **升级步骤**: 1. 升级至Celery 3.1.25。 2. 更新配置文件,使用新设置名。 3. 更新Django配置(如使用`auto-discover`)。 4. 读取本版本的重要说明。 --- ### 文档其他内容 - 包含Celery 2.2、2.5等旧版本的变更历史。 - 详细说明了配置文件格式、配置指令及示例。 - 提供了任务队列操作指南,包括安全配置、消息路由、日志设置等。 --- ### 总结 Celery 4.4.2主要聚焦于Bug修复和性能优化,同时引入了部分新功能和兼容性改进。升级时需注意配置文件的更改和Python版本支持的调整。该版本是向Celery 5迈进的重要步骤,开发者应参考详细文档以确保平滑升级。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 790 页请下载阅读 -
文档评分
请文明评论,理性发言.