Как использовать Django с Uvicorn
Uvicorn — это сервер ASGI, основанный на uvloop и httptools, с упором на скорость.
Установка Uvicorn
Вы можете установить Uvicorn с помощью pip:
python -m pip install uvicorn
Запуск Django в Uvicorn
После установки Uvicorn доступна команда uvicorn, которая запускает приложения ASGI. Uvicorn необходимо вызывать с указанием расположения модуля, содержащего объект приложения ASGI, и имени самого приложения (разделенных двоеточием).
Для типичного проекта Django вызов Uvicorn будет выглядеть так:
python -m uvicorn myproject.asgi:application
Это запустит один процесс, прослушивающий 127.0.0.1:8000. Требуется, чтобы ваш проект был в пути Python; для этого запустите эту команду из той же директории, что и ваш файл manage.py.
В режиме разработки можно добавить --reload, чтобы сервер перезапускался каждый раз, когда изменяется файл на диске.
Для более продвинутого использования обратитесь к документации Uvicorn.
Развёртывание Django с использованием Uvicorn и Gunicorn
Gunicorn — это надёжный веб-сервер, который реализует мониторинг процессов и автоматическое перезапуск. Это может быть полезно при запуске Uvicorn в производственной среде.
Для установки Uvicorn и Gunicorn используйте следующее:
python -m pip install uvicorn gunicorn
Затем запустите Gunicorn, используя класс рабочего процесса Uvicorn так:
python -m gunicorn myproject.asgi:application -k uvicorn.workers.UvicornWorker
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/4.2/howto/deployment/asgi/uvicorn/