# Documentation Django 6.0.7

# Comment utiliser Django avec Uvicorn

Uvicorn est un serveur ASGI basé sur `uvloop` et `httptools`, avec un accent sur la vitesse.

## Installation de Uvicorn

Vous pouvez installer Uvicorn avec `pip`:

    python -m pip install uvicorn

## Lancement de Django dans Uvicorn

Lorsque Uvicorn est installé, une commande `uvicorn` est disponible qui exécute des applications ASGI. Uvicorn a besoin d’être appelé avec l’emplacement d’un module contenant un objet d’application ASGI, suivi par le nom donné à l’application (séparés par un deux-points).

Pour un projet Django typique, l’invocation de Uvicorn pourrait ressembler à ceci :

    python -m uvicorn myproject.asgi:application

Cela démarrera un processus écoutant sur `127.0.0.1: 8000`. Il faut que votre projet soit dans le chemin Python ; pour s’en assurer, exécutez cette commande dans le même répertoire que votre fichier `manage.py`.

En mode développement, vous pouvez ajouter `--reload` pour faire redémarrer le serveur à chaque modification de fichier sur le disque.

Pour une utilisation plus avancée, lisez la documentation Uvicorn.

## Déploiement de Django avec Uvicorn et Gunicorn

Gunicorn est un serveur web robuste qui offre la surveillance des processus et les redémarrages automatiques. Cela peut être utile lors de l’exécution d’Uvicorn dans un environnement de production.

Pour installer Uvicorn et Gunicorn, écrivez ce qui suit :

    python -m pip install uvicorn uvicorn-worker gunicorn

Puis lancez Gunicorn au moyen de la classe de travail d’Uvicorn comme ceci :

    python -m gunicorn myproject.asgi:application -k uvicorn_worker.UvicornWorker