2005年12月12日月曜日

Webサーバの予備調査

apache2.2.0も出たし、lighttpdなるものも速いという噂もあるので比較するかと。一番良いのは同一ハード(i386)のSolaris10/linux/FreeBSD/NetBSDとSolarisSparcで2個とか4個とかUltraSPARC III Cuでとれる事だけど.....時間ないよな。

まずは手軽に自宅のNetBSDでカスタマイズ/チューニングを考えずに予備調査(ちゃんとインストールできたよね程度)をやってみた。



サーバ機械:NetBSD 2.99.14(Athlon XP 2500+(Bartonコア 1.8GHz))
apache1.3.34/2.0.55/2.2.0/lighttpd1.4.7
負荷かけ君:NetBSD 2.99.16(PentiumM900MHz Let's note R2))
ApacheBench(ab) 2.0.41-dev
(abって元はZeus社が作っていたのね。知らんかった)
KeepAliveは全てOffで、プロセス数とかはとりあえずデフォルトのまま。コンテンツは44バイトの静的ファイル。
負荷をかけるマシンの方が性能悪いのでサーバは30-40%のCPU使用率しかいってないです。感覚的にlighttpdが使用率が多少低めに見えました。
「ab -c 100 -n 10000」で順に各サーバを叩いて行くのを3回くりかえし、3回の中央値です。
1.3.34 15.57秒
2.0.50 21.56秒
2.2.00 15.42秒
1.4.7 15.36秒
vmstatでみているとカーネル時間が多かったので、プロセス生成とかに手間取っているのかな。
考えないといけない事
・TCPのチューニング(TIME_WAITが長い?)
・ファイルディスクリプタもチェック
・もう少し現実的な静的ファイル
・Webサーバ側のチューニング(とくに同時受け付け)
・サーバの方の資源が枯渇するような負荷
・サーバ側のCPUなどのデータとり

1 件のコメント:

  1. > 負荷をかけるマシンの方が性能悪いので
    それ Let's Noteのベンチマークになってるじゃん!(ガビーン)

    返信削除