• ブログ
  • Photoshare
  • キーワード
  • ブックマーク
  • ふぉとす
  • 写真
  • ログイン

kaeruspoon

« ふるふるシェーカー | ImageScienceを使っているRailsアプリをPassengerで動かすとエラーになるときの対処 »
  • Passenger(mod_rails)の速度を計ってみた 2008-06-22 00:48:47 Append 511

    ウワサのPassenger(mod_rails)を試してみました。
    インストールのやり方はあちらこちらのサイトに書かれているし、すごく簡単(しかも親切)なので問題はないと思います。
    ぼくとしては速度が一番気になっていたのでabで計測テストをやってみました。

    ab -n 500 -c 2 http://milook.kaeruspoon.net/ 
    

    テスト対象はmilookを使います。同時接続数が2と少ないのは、サーバ上でThinのプロセスが2個しかないからです。
    kaeruspoon系のwebアプリはすべてThinで動いているので、まずはThinで計測してみました。

    1. Apache2 + proxy_balancer + Thin(0.8.1)

    Requests per second:    1.03 [#/sec]
    


    2. Apache2 + proxy_balancer + mongrel(1.1.5)
    つづいて、たぶん今一番一般的な構成のmongrelを試してみます。

    Requests per second:    1.00 [#/sec]
    

    やっぱりThinのほうがちょっと速いね。

    3. Apache2 + Passenger(1.0.5)
    いよいよPassengerです。

    Requests per second:    1.04 [#/sec]
    

    お、Thinよりもさらに速い!(微妙だけど)

    この結果を踏まえて、kaeruspoon系のwebアプリはすべてPassengerで動かすことに決めました(もうPassengerで動いています)。
    PassengerのためにGCを改良したRuby Enterprise Editionを使うとさらにメモリ消費量も抑えられるとか。今後試していこうと思います。
    今回のテストではメモリ消費まではチェックしていません。こちらの方の記事を読むかぎりでは、けっこうよさそうです。

    ちなみに、PassengerではApacheのプロセスのほかにSpawnサーバ(スポーンと読むみたい)のプロセスも立ち上がります。
    これはRailsフレームワークのコードをキャッシュしてくれるやつだそうです。それから、webアプリのコードをキャッシュしてくれるやつも別に存在します。Railsのバージョンが同じなら、複数のアプリがひとつのキャッシュを共有してくれるようにできているみたい。

    Passengerを試していて一番気に入ったのが、mongrelやThinみたいに別個にwebサーバを立ち上げる必要がないところ。proxy_balancerも使わなくていいし。Apacheを頼りにできるのが精神的にかなり楽です。

    追記:かえるイメージだけはPassengerでうまく動かなかったのでThinに戻しました。どこが悪いのかよくわからないな。まあ、そういうこともあるということで、シビアなサービスで使うにはまだまだ様子見なのかもしれません。

    さらに追記:うまく動かなかった理由がわかりました。「ImageScienceを使っているRailsアプリをPassengerで動かすとエラーになるときの対処」を参照。

    Commentコメント(0) Pageリンク元(758)
« ふるふるシェーカー | ImageScienceを使っているRailsアプリをPassengerで動かすとエラーになるときの対処 »

プロフィール

おおいしつかさ

過去の記事

2006年
12月
2007年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2008年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2009年
1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
2010年
1月 2月 3月

キーワード一覧

ActionScript Ajax AmazonResources Erlang git github iPhone javascript Javascript Kaerukeyword kaeruspoon Mac merb milook MiyazakiResistance NSR Objective-C perl Perl Rails Ruby Ruby on Rails RubyKaigi speedpetal subversion Thin Thinkpad tokyobike TRPG twitter ubuntu Ubuntu VAIO VAIO typeZ Waves WordScoop Xen ぐりぐり しろさん カンタロー スノボー ドトール ドライブ バイク プログラミング ユルさん 執筆 宮崎 日本酒 模型 猫 町田 真中洋嗣 自転車
Baner