gpt4 book ai didi

celery 花 饰演 Daemon

转载 作者:行者123 更新时间:2023-12-03 21:25:56 26 4
gpt4 key购买 nike

我用 redis 后端运行 celery。
我想在 centos 6.2 上运行 celery 花作为守护进程。

我知道花是 Tornado 应用程序,所以我应该使用一个进程来运行 Tornado 应用程序作为守护程序。

通常开始花我使用这个命令:

celery flower --broker=redis://localhost



我在下面的链接中读到我需要创建一个 python 脚本:
http://www.charleshooper.net/blog/python-starting-tornado-apps-at-boot-using-upstart/
(Startflower.py)
import tornado.ioloop
import tornado.web
import tornado.httpserver

if __name__ == "__main__":
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(port)
tornado.ioloop.IOLoop.instance().start()

但是,我不确定在“应用程序”变量中放什么。我尝试了“ celery 花 --broker=redis://localhost”和“ celery 花”,但都没有奏效

我需要做什么才能让它作为守护进程工作?

最佳答案

最好使用 systemd 将花作为守护进程运行。 Supervisord 与成为新的 Python3 不兼容 best practice .而且,systemd 是一个 standard process manager对于大多数现代 Linux 发行版。

我在 Ubuntu 16.04 中使用 systemd 作为花的守护进程。虽然我相信其他发行版的设置不会有太大不同。

  • 创建一个名为的 systemd 配置文件,例如,flower.service .就我而言,它位于 /etc/systemd/system文件夹。它应该包含:

    [单元]
    说明=花 celery 服务

    [服务]
    用户=你的用户
    组=www-数据
    WorkingDirectory=/var/www/project-working-directory
    ExecStart=/home/user/miniconda3/envs/virtualenv/bin/flower --port=5555 --loglevel=info -A yourproject
    重启=失败
    类型=简单

    [安装]
    WantedBy=multi-user.target

  • 基本上,您可以像在终端中一样设置所有可用选项。顺便说一句,你应该在 virtual environment下使用花.确保您的用户拥有工作目录的权限。
  • 重新加载 systemd 守护进程sudo systemctl daemon-reload
  • 启动花守护进程sudo systemctl start flower

  • 就这样! This不错的教程帮助我完成了配置过程。

    关于 celery 花 饰演 Daemon,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579047/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com