celerybeat 与 cron 相比有哪些优势?

sha*_*bda 5 django django-celery

我看到很多人更喜欢使用 celerybeat 而非 cron 来完成周期性任务。我看到了 celerybeat 的文档,我可以看到有关如何使用它的信息,但不知道为什么(或何时)我应该更喜欢它而不是 cronjobs。

http://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html#introduction

小智 4

我都用过,得出的结论是beat比cron更能控制。

您可以将其连接起来,以便通过 django admin 进行控制,而不是通过 sshing 登录并更改 crontab。此外,使用beat时存在隐式可移植性——这意味着您可以通过配置而不是登录的方式将其从一台机器移动到另一台机器。

当然,缺点也有,但很少。我们曾经使用 pid 文件来控制作业的单例方面,但现在我们使用通用数据库信号量表(其他人已经使用了 memcache,但我对此感到不舒服)。