如何使用 Uvicorn 托管 Django

Uvicorn 是一个基于 uvloophttptools 的加强运行速度的ASGI服务器。

安装Uvicorn

You can install Uvicorn with pip:

python -m pip install uvicorn

在 Uvicorn 中运行 Django

一旦 Uvicorn 安装完毕,你就可用 uvicorn 命令来运行ASGI应用了。Uvicorn 运行需要包含一个 ASGI 应用程序模块的位置和应用程序的名称(以冒号分隔)。

For a typical Django project, invoking Uvicorn would look like:

python -m uvicorn myproject.asgi:application

它将开启一个进程,监听 127.0.0.1:8000。这需要你的项目位于 Python path 上。为了确保这点,你应该在与 manage.py 文件相同的路径中运行这个命令。

In development mode, you can add --reload to cause the server to reload any time a file is changed on disk.

有关更多的高级用法,请参阅 Uvicorn documentation 1.

使用 Uvicorn 和 Gunicorn 部署 Django 应用

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 gunicorn

Then start Gunicorn using the Uvicorn worker class like this:

python -m gunicorn myproject.asgi:application -k uvicorn.workers.UvicornWorker