Commencez avec Docker en tant que courtier de messages Utilisez RabbitMQ et écrivez jusqu'au point où un programme simple utilisant Celery fonctionne.
Le contenu est presque le même que le document officiel, mais je l'ai changé pour utiliser Docker's Rabbit MQ.
RabbitMQ
#Commencez
docker run --rm -d --hostname my-rabbit --name rabbitmq -p 5672:5672 -p 8080:15672 rabbitmq:3-management
#Arrêtez
docker stop rabbitmq
Le port utilisé par 5672. Le port 8080 (15672) est un écran de gestion qui peut être visualisé à partir du navigateur. (Ça ne doit pas être cette fois)
pip install celery
La version 4.4.2 a été installée.
tasks.py
from celery import Celery
app = Celery('tasks', backend='amqp', broker='amqp://guest:[email protected]:5672')
@app.task
def add(x, y):
return x + y
Créez-le avec le nom tasks.py
.
Courez quand vous êtes prêt.
celery -A tasks worker --loglevel=info
>>> r = add.delay(4,4)
>>> r
<AsyncResult: 8a80f867-c2f4-47f6-b431-665c624f0ec2>
>>> r.ready()
True
>>> r.get()
8
J'ai pu confirmer que cela fonctionnait.
Recommended Posts