代码之家  ›  专栏  ›  技术社区  ›  Santhosh

Django:当新的更改上传到生产服务器时,我是否必须重新启动celery beat、celery worker和Django gunicorn

  •  0
  • Santhosh  · 技术社区  · 5 年前

    我有一台正在运行的生产服务器 Django 应用

    Django服务器运行时使用 gunicorn 和 nginx

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

    芹菜工人使用

    pipenv run celery -A boiler worker
    

    芹菜节拍使用

    pipenv run celery -A boiler beat 
    

    现在,我已经更新了我的模型,在我的生产服务器上几乎没有视图(即使用github进行了一些更改)

    现在,为了反映更改,我应该重新启动所有 celery beat , celery worker 和 Django server gunicorn

    或仅限 芹菜工人 和 Django服务器gunicorn 足够了

    或仅限 Django服务器gunicorn 足够了

    1 回复  |  直到 5 年前
        1
  •  1
  •   Ken4scholars    5 年前

    如果您对任何代码所做的更改以某种方式影响芹菜任务,那么是的,您应该重新启动芹菜工作程序。如果你不确定,一个安全的方法是重启。由于芹菜节拍跟踪定期任务的日程安排,如果你重新启动工人,你也应该重新启动它。当然,您应该确保当前没有正在运行的任务,或者在重新启动之前正确地终止它们。您可以使用监视任务 Flower