Uvicorn は uvloop と httptools をベースにした速度重視のASGIサーバーです。
pip で Uvicorn をインストールします:
python -m pip install uvicorn
Uvicornがインストールされると、ASGIアプリケーションを実行する uvicorn コマンドが利用できるようになります。Uvicornを呼び出すには、ASGIアプリケーションオブジェクトを含むモジュールの場所と、それに続いてアプリケーションの名前(コロン区切り)を指定する必要があります。
典型的な Django プロジェクトでは、Uvicorn の起動は次のようになります:
python -m uvicorn myproject.asgi:application
このコマンドは 127.0.0.1:8000 を待ち受けるプロセスを1つ起動します。プロジェクトは Python のパス上にある必要があります。それを確実にするために、 manage.py ファイルと同じディレクトリからこのコマンドを実行してください。
開発モードでは、 --reload を追加することで、ディスク上のファイルが変更されるたびにサーバをリロードできます。
より高度な使い方は Uvicorn documentation を参照してください。
Gunicorn は、プロセス監視と自動再起動を実装した堅牢なウェブサーバーです。本番環境でUvicornを運用する際に役立ちます。
UvicornとGunicornをインストールするには、次のコマンドを実行します:
python -m pip install uvicorn uvicorn-worker gunicorn
Uvicornのworkerクラスを使ってGunicornを起動します:
python -m gunicorn myproject.asgi:application -k uvicorn_worker.UvicornWorker
7月 02, 2025