【问题标题】:Celery multi not working as expected芹菜多没有按预期工作
【发布时间】:2013-07-02 08:36:21
【问题描述】:

我有这个我的项目文件夹结构

api
    -- __init__.py
    --jobs/
        -- __init__.py
        -- celery.py
        -- celeyconfig.py
        -- tasks.py
    --api_helpers/
    --views/

tasks 有一个名为ExamineColumns的任务

我使用celery worker -A api.jobs --loglevel=Info启动worker

它工作正常,我可以运行任务。

这是 celery 检查命令的输入

$ celery inspect registered
-> ranjith-ThinkPad-T420: OK
    * ExamineColumns
    * celery.backend_cleanup
    * celery.chain
    * celery.chord
    * celery.chord_unlock
    * celery.chunks
    * celery.group
    * celery.map
    * celery.starmap

但是当我尝试多模式时,它根本不起作用。我正在尝试通过运行来运行

celery multi start w1 -c3 -A api.jobs  --loglevel=Info

但它根本没有开始。

$ celery inspect registered
Error: No nodes replied within time constraint.

我不知道为什么它不起作用

【问题讨论】:

    标签: celery celery-task celeryd


    【解决方案1】:

    你可以尝试运行为:

    /usr/bin/celery multi start w1 w2 --uid=www --loglevel=INFO --pidfile=/var/run/%n.pid --logfile=/var/log/%n.log --quiet
    

    --uid 必须是您服务器中的用户/组。不推荐使用 root

    --quiet 不会向控制台输出数据

    %n.log 将在 w1.log 和 w2.log 上替换自己


    您可以使用ps uax | grep celery进行检查,结果如下:

    www ... /usr/local/bin/python2.7 -m celery.bin.celeryd -n w1.domain.ru --loglevel=DEBUG --logfile=/var/log/w1.log --pidfile=/var/run/w1.pid
    www ... /usr/local/bin/python2.7 -m celery.bin.celeryd -n w2.domain.ru --loglevel=DEBUG --logfile=/var/log/w2.log --pidfile=/var/run/w2.pid
    

    【讨论】:

    • 我如何给出 --app 参数。只是追加到命令?
    • 看来我不知道--app argument 但是如果你想为你的项目运行 celery,你必须从包含 celery 配置文件的文件夹中运行它。 celery 的配置应该有选项CELERY_IMPORTS=("path_to_app.tasks",)docs.celeryproject.org/en/latest/…
    • 是否可以不作为守护进程运行多启动命令?
    • @tzenderman 是的,但我似乎不明白你的意思。请给我更多的细节你的任务。
    • @AbbasovAlexander 所以,我使用 supervisord 运行 celery。我无法找到一种方法来运行 celery multi start 而无需守护进程。为了能够与 supervisord 正常工作,该进程不能作为守护进程运行。
    猜你喜欢
    • 1970-01-01
    • 2021-10-19
    • 2020-03-18
    • 2012-06-14
    • 2014-11-15
    • 1970-01-01
    • 2012-07-02
    • 2011-09-07
    • 2013-03-03
    相关资源
    最近更新 更多