# Django 5.0.9.dev20240806133106 ドキュメント

# Django を Uvicorn とともに使う

Uvicorn は `uvloop` と `httptools` をベースにした速度重視のASGIサーバーです。

## Uvicorn のインストール

`pip` で Uvicorn をインストールします:

    python -m pip install uvicorn

## Uvicorn で Django を実行

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 を参照してください。

## UvicornとGunicornを使ってDjangoをデプロイする

Gunicorn は、プロセス監視と自動再起動を実装した堅牢なウェブサーバーです。本番環境でUvicornを運用する際に役立ちます。

UvicornとGunicornをインストールするには、次のコマンドを実行します:

    python -m pip install uvicorn gunicorn

Uvicornのworkerクラスを使ってGunicornを起動します:

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