web-dev-qa-db-ja.com

NGINXの新規インストールで1秒あたりのリクエスト数が非常に少ない

Nginxを新規インストールすると、Apacheベンチマークを実行してこれらの結果が得られますが、これは非常に奇妙だと感じています。フェッチされたページは、nginxによってインストールされたデフォルトの静的index.htmlテストページです。 abをローカルで実行すると、1秒あたりのリクエスト数が非常に多くなりますが、リモートでは大幅に低くなります。テストでファイアウォールを一時的に無効にしました。

ローカルで実行されているAB-n 100:

ドキュメントパス:/ 
ドキュメントの長さ:3698バイト
 
同時実行レベル:1 
テストにかかった時間:0.21347秒
完了したリクエスト:100 
失敗したリクエスト:0 
書き込みエラー:0 
転送された合計:391000バイト
転送されたHTML:369800バイト
 1秒あたりのリクエスト:4684.50 [#/ sec](平均)
リクエストあたりの時間:0.213 [ms](平均)
リクエストあたりの時間:0.213 [ms](平均、すべての同時リクエスト全体)
転送速度:17847.94 [Kバイト/秒]受信

リモートで実行されているAB-n 100(1つのWindows7ともう1つのmacos 10.7の2つの異なるマシンから試してみました):

 
同時実行レベル:1 
テストにかかった時間:12.502秒
完全なリクエスト:100 
失敗したリクエスト:0 
書き込みエラー:0 
転送された合計:391000バイト
転送されたHTML:369800バイト
 1秒あたりのリクエスト数:8.00 [#/秒](平均)
リクエストあたりの時間:125.020 [ms](平均)
リクエストあたりの時間:125.020 [ms](平均、a 
転送速度:30.54 [Kバイト/秒] re 
 
接続時間(ms)
最小平均[+/- sd]中央値最大
接続:38 43 1.6 42 56 
処理:78 82 2.1 82 97 
待機:38 43 1.3 43 49 
合計:121125 2.6 125139 

すべてのサイトはApacheで実行されていますが、これにも同じ問題があります。それがApache構成の問題であるかどうかを確認するために、nginxをインストールしましたが、明らかにそうではありません。結果の間にこのような大きな矛盾がある理由を特定することはできません。誰かが何らかの洞察を提供してくれることを望んでいます。

これは正常ですか?サーバーで何かが正しく構成されていませんか?

5
Adam Gerbert

リモートにいるため、テストの速度が大幅に低下し、リクエストの待ち時間にテストのボトルネックが発生しました。

ここでの懸念事項の1つはスループットです(クライアントのサーバーへのリンクの速度)が、主な問題は、同時実行性が1に設定されていることです。これは、次のリクエストを送信する前に、abが待機していることを意味します。終了するリクエストごとに。

それが言うように、それはリクエストごとにTime per request: 125.020 [ms] (mean)を取ります。 HTTPキープアライブはabでもデフォルトで無効になっているので、サーバーをpingしたときに得られるラウンドトリップ時間は約60ミリ秒だと思いますか?

ab -n 100 -k -c 10を試してください-すべてのレイテンシ遅延を取り除くことはできませんが、リクエストごとの時間を半分に短縮し、すべての同時実行の平均を10分の1に短縮する必要があります-おそらくテストを約20回完了しますもっと早く。

3
Shane Madden