【发布时间】:2014-08-20 21:54:09
【问题描述】:
我在我的网络应用程序中使用django 1.3.3,目前我不想迁移到较新的版本,我想安排定期任务向用户发送电子邮件。
我发现芹菜是最好的选择,但我没有什么顾虑。
- celery 是否适用于旧版本的 django (1.3.3)?
- 除了 Celery 之外,还有其他 django 应用程序可以满足我的目的吗?
【问题讨论】:
我在我的网络应用程序中使用django 1.3.3,目前我不想迁移到较新的版本,我想安排定期任务向用户发送电子邮件。
我发现芹菜是最好的选择,但我没有什么顾虑。
【问题讨论】:
Celery 可以正常工作,但如果与 1.3 和最新版本的 Celery 存在兼容性问题,您可能必须将其固定到早期版本。
当我使用 1.3 时,我使用 this gist 来记录我需要哪个版本的 Celery。我不能保证这是 100% 可靠的,但当时它确实对我有用。
然而固定到旧版本并不是一个好的举措:例如,在 Celery 的较新版本中可能存在安全修复。 (Django 肯定有一些,1.3.x 不再与它们一起维护,所以upgrading to 1.4.13 LTS 至少是值得的。)
让我再说一遍,换个方式:
“暂时我不想迁移到较新的版本”不是将生产应用程序留在旧版本框架上的充分理由,如果该领域存在已知的安全问题(并且有)。升级的轻微痛苦比如果您保持原样可能出现的错误或安全问题更可取。 1.3.3 甚至都不是最新的 1.3 分支版本...
继续下巴的工作并升级,最后到1.4.13(升级不是很大,应该很轻松)
就 Celery 的替代品而言,我碰巧更喜欢 rq - 认为它确实需要 Redis,而 Celery 的后端更灵活。
【讨论】: