celery 到底能不能动态添加周期任务

2019 年 8 月 23 日
 hanssx
动态即通过前端 UI 等手段自定义周期时间,而不是通过初始化时写配置文件,经过 gg 和实践摸索,发现并不能实现动态添加周期任务。
https://stackoverflow.com/questions/10194975/how-to-dynamically-add-remove-periodic-tasks-to-celery-celerybeat/43752416
倒数第 3 个回答,提到了文档中的使用 https://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html#entries
然后我使用文档中的例子 add_periodic_task,并没有成功,文档中说的不是动态添加?
3860 次点击
所在节点    Python
13 条回复
GoLand
2019 年 8 月 23 日
添加了 periodic task 得重启 beat 和 celery 的,动态添加不了。
HFcbyqP0iVO5KM05
2019 年 8 月 24 日
可以添加,但是默认没有,得自己实现。
beat 也是周期性从文件读任务参数。
ynkkdev
2019 年 8 月 24 日
django celery beat 是可以实现读取数据库中动态生成的任务周期设置,来实现你说的这个需求的
ynkkdev
2019 年 8 月 24 日
当然你要是没有用 django 的话,其他的框架有没有提供类似的第三方包我就不清楚了
hanssx
2019 年 8 月 24 日
@GoLand
@gulu
@youngce 谢谢三位,我明白了。
linvaux
2019 年 8 月 24 日
最近也在学习 celery,感觉有点复杂
Eds1995
2019 年 8 月 25 日
GitHub 上有一个用 redis 来实现动态添加任务的库,rebeat
hanssx
2019 年 8 月 26 日
@Eds1995 兄弟我没搜到你这个库啊
hanssx
2019 年 8 月 26 日
Eds1995
2019 年 8 月 26 日
hanssx
2019 年 8 月 26 日
@Eds1995 感谢,不过不怎么会用,文档有点少。
hanssx
2019 年 8 月 26 日
推荐个国人写的,但是我用着有些问题,examples/base/tasks.py 文件是没有问题的,https://github.com/AngelLiang/celery-sqlalchemy-scheduler
hanssx
2019 年 8 月 27 日

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/594624

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX