1

これは私のプロジェクトフォルダー構造です

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

タスクには、というタスクがありますExamineColumns

を使用してワーカーを起動しますcelery worker -A api.jobs --loglevel=Info

正常に動作し、タスクを実行できます。

これは、セロリの検査コマンドの出力です

$ 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.

なぜ機能しないのかわかりません

4

1 に答える 1

3

次のように実行できます。

/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.logw1.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
于 2013-07-05T19:51:07.660 に答える