Dino Geek essaye de t'aider

Comment utiliser Django avec Celery ?


Django est un framework de développement web en Python qui respecte le design pattern de type modèle-vue-contrôleur, tandis que Celery est une bibliothèque Python open-source qui peut être utilisée pour gérer les tâches asynchrones et les files d’attente de messages distribuées.

La première étape pour utiliser Django avec Celery est d’installer Celery. Celery peut être installé via pip en exécutant la commande suivante dans l’invite de commandes :
```
pip install celery
```

Après avoir installé Celery, nous devons le configurer pour l’utiliser avec notre projet Django. Pour cela, créez un nouveau fichier appelé `celery.py` dans le même répertoire que votre fichier `settings.py`.

Dans le fichier `celery.py`, importez le module Celery et créez une instance de Celery. La première argument pour cette instance est le nom de votre projet Django. Ensuite, il faut charger les paramètres de Celery depuis votre fichier de paramètres Django en utilisant la méthode `app.config_from_object()`.
```
from celery import Celery

app = Celery(‘project_name’)
app.config_from_object(‘django.conf:settings’, namespace=‘CELERY’)
```
Ensuite, dans le même fichier, chargez les tâches asynchrones définies dans votre application en utilisant la méthode `autodiscover_tasks()`.
```
app.autodiscover_tasks()
```
Ensuite, on doit ajouter la configuration de Celery à notre fichier `settings.py`. Pour cela, on définit une url du courtier ou BROKER\_URL.
```
CELERY_BROKER_URL = ‘amqp://guest:guest@localhost‘
```
Enfin, modifiez votre fichier `__init__.py` (qui se trouve dans le même répertoire que les fichiers `settings.py` et `celery.py`) pour qu’il importe la tâche celery que nous venons de créer lorsque Django démarre.
```
from .celery import app as celery_app

all = (‘celery_app’,)
```
Maintenant, vous pouvez définir vos tâches asynchrones dans un fichier `tasks.py` dans n’importe laquelle de vos applications. Par exemple:
```
from celery import shared_task

@shared_task
def add(x, y): return x + y
```
Pour exécuter un travail en arrière-plan, vous pouvez simplement appeler la méthode `delay()` sur votre tâche.

Ces informations ont été obtenues à partir de la documentation officielle de Celery (https://docs.celeryproject.org/en/stable/django/first-steps-with-django.html) et des ressources en ligne sur le site de Dev.to (https://dev.to/cleancodestudio/how-to-setup-celery-with-django-2020-tutorial-4gbi).

Avec ces étapes, vous devriez être en mesure de commencer à utiliser Django avec Celery.


Générez simplement des articles pour optimiser votre SEO
Générez simplement des articles pour optimiser votre SEO





DinoGeek propose des articles simples sur des technologies complexes

Vous souhaitez être cité dans cet article ? Rien de plus simple, contactez-nous à dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nom de Domaine | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Mentions Légales / Conditions Générales d'Utilisation