2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【備忘録】本番環境での実行はGunicornを使うらしい。

Last updated at Posted at 2024-01-02

はじめに

仮想マシン(GCE)でFlaskアプリを実行するとき…、
な~んにも勉強していなかったので、以下のように実行していました。

python3 main.py

ですが、、本番環境では以下のように実行したほうがいいんですって。

gunicorn -w 4 main:app

その理由と、使い方だけ最低限まとめます。

Gunicornを本番環境で使う理由

ずばり、「ワーカープロセスを設定して、処理能力を向上させる」。

ワーカープロセスの設定"ってのは、
「アクセスした人が入る部屋をいくつ設けますか」ってこと。
仮に"4"とした場合、4つの部屋が作られて、訪問者はその部屋のどこかに入る。

要は、訪問者の処理待ちを緩和できるんですね。

※:ワーカープロセスの設定は、マシンの性能に合わせて調整すべし。

Gunicornの使い方

pipで簡単にインストールできます。

pip install gunicorn

そしたらあとはmain.py実行時に使うだけ

gunicorn -w 4 main:app

app.pyの場合は

gunicorn -w 4 app:app

でOK。

"4"というのはワーカープロセスの設定をしています。
この数値を変えることで、部屋の個数を設定できます。

デフォルトはポート番号8000で実行されるので、
nginx側のリバースプロキシを、8000で設定してあげればOK。

おわりに

本番環境でアプリが動くことはうれしい。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?