如何让Celery在Django(drf)+Redis+WSGI(EC2)中运行



我认为这不是一个很新的问题。我就是找不到正确的答案。我正在尝试将Celery用于后台任务,同时使用Django Rest Framework实现后端。我有一个Redis服务器。

Celery正在与一起正常工作

celery worker -A my_project --loglevel=info

但是,如果我使用此命令,它将不起作用。我该如何保持这种状态?我发现了一个supervisor的博客。我只是想知道做这件事的标准是什么(以及更容易(。

您应该做的是使用docker并为您的服务使用docker-compose。但如果你只是在测试东西:

$ nohup celery worker -A my_project --loglevel=info &

&用于将进程带到后台,您可以使用fg调用它,使用Ctrl + Z将它挂起到bg,nohup确保即使关闭ssh会话,芹菜仍能正常工作。

编辑:使用此方法的唯一缺点是,如果进程退出,则必须再次调用它。在生产环境中,您应该选择docker和docker compose。

相关内容

  • 没有找到相关文章

最新更新