How to use Django with UvicornLink to this heading
Uvicorn is an ASGI server based on uvloop and httptools, with an
emphasis on speed.
Installing UvicornLink to this heading
You can install Uvicorn with pip:
python -m pip install uvicorn
Running Django in UvicornLink to this heading
When Uvicorn is installed, a uvicorn command is available which runs ASGI
applications. Uvicorn needs to be called with the location of a module
containing an ASGI application object, followed by what the application is
called (separated by a colon).
For a typical Django project, invoking Uvicorn would look like:
python -m uvicorn myproject.asgi:application
This will start one process listening on 127.0.0.1:8000. It requires that
your project be on the Python path; to ensure that run this command from the
same directory as your manage.py file.
In development mode, you can add --reload to cause the server to reload any
time a file is changed on disk.
For more advanced usage, please read the Uvicorn documentation.
Deploying Django using Uvicorn and GunicornLink to this heading
Gunicorn is a robust web server that implements process monitoring and automatic restarts. This can be useful when running Uvicorn in a production environment.
To install Uvicorn and Gunicorn, use the following:
python -m pip install uvicorn uvicorn-worker gunicorn
Then start Gunicorn using the Uvicorn worker class like this:
python -m gunicorn myproject.asgi:application -k uvicorn_worker.UvicornWorker