Wie zu reinigen, die Aufgaben in Sellerie-Warteschlangen verwenden Redis als der broker
Part1
Habe ich gelesen und versucht verschiedene SO threads löschen der Sellerie Aufgaben unter Verwendung von Redis, aber keiner von Ihnen arbeitete. Bitte lassen Sie mich wissen, wie zu reinigen, die Aufgaben in Sellerie verwenden Redis als der broker.
Teil 2
Außerdem habe ich mehrere Warteschlangen. Ich kann laufen, es in das Projekt-Verzeichnis, aber wenn die Dämonisierung, die Arbeitnehmer nehmen Sie nicht die Aufgabe. Ich muss noch starten Sie den Sellerie Arbeiter manuell. Wie kann ich demozize?
Hier ist mein celerd conf.
# Name of nodes to start, here we have a single node
CELERYD_NODES="w1 w2 w3 w4"
CELERY_BIN="/usr/local/bin/celery"
# Where to chdir at start.
CELERYD_CHDIR="/var/www/fractal/parser-quicklook/"
# Python interpreter from environment, if using virtualenv
#ENV_PYTHON="/somewhere/.virtualenvs/MyProject/bin/python"
# How to call "manage.py celeryd_multi"
#CELERYD_MULTI="/usr/local/bin/celeryd-multi"
# How to call "manage.py celeryctl"
#CELERYCTL="/usr/local/bin/celeryctl"
#CELERYBEAT="/usr/local/bin/celerybeat"
# Extra arguments to celeryd
CELERYD_OPTS="--time-limit=300 --concurrency=8 -Q BBC,BGR,FASTCOMPANY,Firstpost,Guardian,IBNLIVE,LIVEMINT,Mashable,NDTV,Pandodaily,Reuters,TNW,TheHindu,ZEENEWS "
# Name of the celery config module, don't change this.
CELERY_CONFIG_MODULE="celeryconfig"
# %n will be replaced with the nodename.
CELERYD_LOG_FILE="/var/log/celery/%n.log"
CELERYD_PID_FILE="/var/run/celery/%n.pid"
# Workers should run as an unprivileged user.
#CELERYD_USER="nobody"
#CELERYD_GROUP="nobody"
# Set any other env vars here too!
PROJET_ENV="PRODUCTION"
# Name of the projects settings module.
# in this case is just settings and not the full path because it will change the dir to
# the project folder first.
CELERY_CREATE_DIRS=1
Celeryconfig ist schon in part1.
Hier ist mein proj-Verzeichnis-Struktur.
project
|-- main.py
|-- project
| |-- celeryconfig.py
| |-- __init__.py
|-- tasks.py
Wie kann ich dämonisieren mit den Warteschlangen? Ich habe die Warteschlangen in CELERYD_OPTS
als gut.
Gibt es einen Weg, in dem wir dynamisch verteufeln die Anzahl der Warteschlangen in der Sellerie? Für zB:- wir haben CELERY_CREATE_MISSING_QUEUES = True
für die Erstellung der fehlenden Warteschlangen. Gibt es etwas ähnliches wie daemonize Sellerie Warteschlangen?
Ich folgte dem doc, alles eingestellt und in der Art und Weise. Aber wenn ich
sudo service celeryd status
es sagt celeryd not running (no pidfile)
. Wie kann ich es lösen?
InformationsquelleAutor PythonEnthusiast | 2015-02-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
celery purge
sollte genug sein, zum bereinigen der Warteschlange in redis. Jedoch, Ihre Arbeitnehmer haben seine eigenen Aufgaben vorbehalten und schickt Sie zurück in die Warteschlange, wenn Sie aufhören, die Arbeiter. Also, zuerst, stoppen alle Arbeitnehmer. Dann laufencelery purge
.InformationsquelleAutor Capi Etheriel
Wenn Sie mehrere Warteschlangen
celery purge
wird, löschen Sie die Voreinstellung. Sie können angeben, welche Warteschlange(N), die Sie möchten, zu bereinigen, als solche:InformationsquelleAutor nbeuchat