【问题标题】:How to start and stop celery beat and workers in Django?如何在 Django 中启动和停止 celery beat 和 worker?
【发布时间】:2020-08-11 19:47:34
【问题描述】:

我每 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 中。 现在,我希望能够通过按网页上的按钮来启动和停止所有正在运行的任务。

我该怎么办?

【问题讨论】:

    标签: python django celery periodic-task


    【解决方案1】:

    【讨论】:

      猜你喜欢
      • 2018-07-09
      • 2019-05-02
      • 2021-12-01
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 2014-10-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多