先日、アクセスを記録するだけの簡単なWebアプリを作ろうとして同僚のTさんに相談したところ「素のRackアプリがおすすめですよ〜」とのコメントをいただいた。 なんとなくmod_rubyでApacheのHandlerとして実装してしまうのがいいかな…と考えていたのだが、趣味を通すと楽しくないことになりそうなので、Rackアプリで実装する方向に心は傾きつつある。 ま、それはそれとして、実際、Handlerとして実装するのとPassengerを使うのでは、どのくらいパフォーマンスに差があるのか知りたかったので、簡単に計測してみた。 計測方法 いつものようにEC2で計測。アクセス毎にsyslogに書きにいくだけの簡単なプログラムを、Handler(C, Ruby)とRackで実装して、Siege×5で叩いてみた。 Handler(C版) #include "httpd.h" #include "h