Så här använder du Django med Uvicorn¶
Uvicorn är en ASGI-server baserad på uvloop
och httptools
, med tonvikt på hastighet.
Installera Uvicorn¶
Du kan installera Uvicorn med pip
:
python -m pip install uvicorn
Att köra Django i Uvicorn¶
När Uvicorn är installerat finns kommandot uvicorn
tillgängligt som kör ASGI-applikationer. Uvicorn måste anropas med platsen för en modul som innehåller ett ASGI-applikationsobjekt, följt av vad applikationen heter (separerat med ett kolon).
För ett typiskt Django-projekt ser Uvicorn ut på följande sätt:
python -m uvicorn myproject.asgi:application
Detta kommer att starta en process som lyssnar på 127.0.0.1:8000
. Det kräver att ditt projekt finns på Python-sökvägen; för att säkerställa det kör du det här kommandot från samma katalog som din manage.py
-fil.
I utvecklingsläget kan du lägga till --reload
för att få servern att ladda om varje gång en fil ändras på disken.
För mer avancerad användning, läs Uvicorn-dokumentationen.
Distribuera Django med hjälp av Uvicorn och Gunicorn¶
Gunicorn är en robust webbserver som implementerar processövervakning och automatiska omstarter. Detta kan vara användbart när man kör Uvicorn i en produktionsmiljö.
För att installera Uvicorn och Gunicorn, använd följande:
python -m pip install uvicorn uvicorn-worker gunicorn
Starta sedan Gunicorn med hjälp av Uvicorn-arbetarklassen så här:
python -m gunicorn myproject.asgi:application -k uvicorn_worker.UvicornWorker