【问题标题】:Django: Do i have to restart celery beat, celery worker and Django gunicorn when new changes are uploaded to production serverDjango:当新的更改上传到生产服务器时,我是否必须重新启动 celery beat、celery worker 和 Django gunicorn
【发布时间】:2021-01-26 02:29:02
【问题描述】:

我有一个运行Django 应用程序的生产服务器

Django 服务器使用gunicornnginx 运行

pipenv run gunicorn --workers=1 --threads=50 --bind 0.0.0.0:8888 boiler.wsgi:application

celery worker 使用

pipenv run celery -A boiler worker

celery beat 运行使用

pipenv run celery -A boiler beat 

现在我已经更新了我的模型和我的生产服务器上的一些视图(即使用 github 提取了一些更改)

现在为了反映更改,我应该重新启动所有 celery beatcelery workerDjango server gunicorn

或者只有celery workerDjango server gunicorn就足够了

或者只有Django server gunicorn就足够了

【问题讨论】:

    标签: django


    【解决方案1】:

    如果您对任何代码进行了以一种或另一种方式影响 celery 任务的更改,那么是的,您应该重新启动 celery worker。如果您不确定,一个安全的选择是重新启动。而且由于 celery beat 跟踪定期任务的调度,如果您重新启动工作人员,您也应该重新启动它。当然,您应该确保没有当前任务正在运行或在重新启动之前正确终止它们。您可以使用Flower 监控任务

    【讨论】:

      猜你喜欢
      • 2018-07-09
      • 2019-05-02
      • 2019-11-15
      • 2020-08-11
      • 2021-12-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-25
      • 2015-01-01
      相关资源
      最近更新 更多