[英]How to start and stop celery beat and workers in Django?
我每 30 秒从 API 获取一些数据,并定期插入 mongoDB。 因此,我使用 celery 在后台处理它。 celery.py 如下:
@app.on_after_configure.connect
def setup_periodic_tasks(sender, **kwargs):
from example.tasks import API
sender.add_periodic_task(30, API.s(), name='Api')
我有tasks.py如下:
@shared_task
def API():
data=request.get(url).json()
db.collectionName.insert_many(data)
然后,我使用两个命令在后台定期运行任务:
celery -A DjangoCelery1 beat -l info
celery -A DjangoCelery1 worker -l info
一切正常,数据来自 API 并保存在 MongoDB 中。 现在,我希望能够通过按下 web 页面上的按钮来启动和停止所有正在运行的任务。
我该怎么办?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.