Starbug1 をnignxで動かしてみた

nginx(「エンジンエックス」と発音) は、軽量高性能なWebサーバ/リバースプロキシであり、同時に電子メール(IMAP/POP3)プロキシである。BSD系ライセンスでリリースされている。

nginx – Wikipedia

Starbug1 がnginx+fcgiwrapでも動作するとのことでしたので、手元でも動かしてみました。手元のUbuntuでは、apache2がport 80で動作しているので、nginx関連はソースからコンパイルすることにしました。インストールは下のサイトを参考にしました。

nginx + fcgiwrap でcgiを動かす

apache2は port 80で動かしていて、nginxは port 81 で動かすようにしました。

nginx+fcgiwrapでもStarbug1が動作するようになったので、非常に簡単なベンチマークを取ってみました。

Starbug1 on apache2

% ab -n 1000 -c 10 'http://127.0.0.1/starbug1/index.cgi/Sand%20Box/list'
Concurrency Level:      10
Time taken for tests:   6.839 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      14607000 bytes
HTML transferred:       14392000 bytes
Requests per second:    146.22 [#/sec] (mean)
Time per request:       68.388 [ms] (mean)
Time per request:       6.839 [ms] (mean, across all concurrent requests)
Transfer rate:          2085.84 [Kbytes/sec] received

Starbug1 on nginx

% ab -n 1000 -c 10 'http://127.0.0.1:81/starbug1/index.cgi/Sand%20Box/list'
Concurrency Level:      10
Time taken for tests:   10.863 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      14577000 bytes
HTML transferred:       14395000 bytes
Requests per second:    92.05 [#/sec] (mean)
Time per request:       108.632 [ms] (mean)
Time per request:       10.863 [ms] (mean, across all concurrent requests)
Transfer rate:          1310.41 [Kbytes/sec] received

まとめ

apache2はapt-getでインストールしたもので、nginx関連はソースからコンパイルしたから条件としては、公平なベンチマークにはなってない可能性があります。軽量なnginxを使えるといいと思ったけど、apache2の方が速かった。nginxの場合はfcgiwrap経由してるから逆にオーバーヘッドになってると推測してみた。だとするとLightyでも同様のような気がする。


Starbug1は、apache2で動かすのが、簡単だし速い。という結論になりました。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください