domanda novizio di RabbitMQ e sedano
-
26-10-2019 - |
Domanda
Ho iniziato a giocare con sedano e RabbitMQ questa mattina e definite alcune attività di base per vedere come le prestazioni miglioreranno sul mio server.
Ho aggiunto il mio utente RabbitMQ, vhosts e impostare i miei permessi. Iniziato il mio server RabbitMQ
In un tutorial molto dettagliato Ho trovato questi ragazzi utilizzano celerybeat e celeryd per vedere lo stato di un compito, e anche per eseguirli.
il tutorial dettagliato da Rich Leland
Ti sedano anche bisogno in qualche modo, o sono i passi che ho preso abbastanza?
Da nessuna parte ho visto qualsiasi info o note su questo ... solo chiedendo
Soluzione
Bene, avrete bisogno di avere una sorta di processo di sedano in esecuzione al fine di compiti manico nella coda. Il processo celeryd in ascolto sulla coda, e le attività Esegue in base alle impostazioni. Se non si dispone di un processo in esecuzione celeryd, devi semplicemente essere aggiunta compiti alla coda, ma mai svuotarlo.
Se siete solo interessati a vedere le code, mi consiglia di installare il gestione RabbitMQ plug-in .
Altri suggerimenti
http://ask.github.com/celery/getting-started/ introduction.html
- Avvia il server RabbitMQ
- Definisci il tuo celeryconfig.py
- Avvia il demone sedano: celeryd
RabbitMQ ha un account di accesso guest, quindi questo è un modo più veloce per iniziare. Mettere questo in celeryconfig.py:
import sys
sys.path.append('.')
BROKER_HOST = "localhost"
BROKER_PORT = 5672
BROKER_USER = "guest"
BROKER_PASSWORD = "guest"
BROKER_VHOST = "/"
CELERY_RESULT_BACKEND = "amqp"
CELERY_IMPORTS = ("tasks",)
un rapido test, ha messo questo in tasks.py:
from celery.task import task
@task
def add(x, y):
return x + y
if __name__ == "__main__":
result = add.delay(4, 4)
result.wait()
Avvia celeryd nella stessa directory ha celeryconfig.py e tasks.py:
celeryd --loglevel=INFO
Infine, eseguire tasks.py