おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

nginxのプロセス数はいくつに設定するのがよいのか

最近passengerがnginxに対応したことで、俄然注目度が高まってきている(はず)のnginx。今日はそんなnginxの設定を調べていました。

nginxはApacheなどとは違いスレッドを使わないそうで、リクエストはプロセスで管理します。worker_processディレクティブでプロセスの数を設定するのですが、いくつに設定するのが適切なのかがよくわからなったので調べました。

Nginx "how to" - The Fast and Secure Web Server (nginx.conf) @ Calomel.org - Open Source Research and Referenceにworker_processについて書いてあったので意訳すると、

通常は2かCPUの数に設定するとよいけど、sslや圧縮を使用する時は例外で、その際は倍の数のworkerを使った方がいい。

だそうです。

上記リンクはworker_process以外のディレクティブの説明がたくさんあるのでとても参考になります。まだほとんど読めてないのでちょっとずつ目を通さないと・・・