Nginx + uWSGI なアプリサーバーの同時処理性能がどうやって決まるのか、
設定値を調べたので備忘メモ。
構成
Nginx
- worker_process;
- ワーカーのプロセス数
- デフォルト 1
-
auto
にすると、CPU のコア数と同じになる
- worker_connections;
- 1 プロセスが同時に受けつけられるコネクション数
- デフォルト 512
- クライアントから見ると、プロセス数 * コネクション数だけ口があることになる
- なお、総コネクション数がファイルディスクリプタの上限数を超えないようにする必要があります。
- こちらの記事が分かりやすかったです。
* https://qiita.com/mikene_koko/items/85fbe6a342f89bf53e89
- こちらの記事が分かりやすかったです。
Uwsgi
- processes (または workers)
- プロセス数を定義
- 必須パラメータ(デフォルトなし)
- threads
- スレッド数を定義
- 必須パラメータ(デフォルトなし)
- nginx から見た時は、プロセス数 * スレッド数だけの口があることになる