Phusion Passengerのリソース消費

Phusion Passengerを使うようにしたのですが、リソースの消費量は気になるところ。チューニングの方法については、以下のページにあります。

5.12. Resource control and optimization options

上記ページを見る限り、チューニングパラメータは以下の5点です。

  1. PassengerMaxPoolSize
  2. PassengerMaxInstancesPerApp
  3. PassengerPoolIdleTime
  4. PassengerMaxRequests
  5. PassengerStatThrottleRate

最初のPassengerMaxPoolSizerailsインスタンスの最大値で、VPSでメモリが256MBでMySQLのような他のサービスも立ち上がっている場合は2が推奨とのこと。最後のPassengerStatThrottleRateは、config/environment.rb等のファイルの存在をチェックする間隔(秒)で、デフォルトの0だと毎リクエスト毎にチェックするらしい。

ということで、/etc/apache2.confの最後に以下の指定をしました。

PassengerMaxPoolSize 2
PassengerStatThrottleRate 3600

apache2起動後にblogにアクセスしてみると、どーんと120MBくらいメモリを使用します。うーん、どうなんだろう。あまり変化がないようであれば、PoolIdleTimeを0にしてプロセスを常駐させることも検討してみます。