2013-03-31 19 views
25

これら2つのフィールドの違いは何ですか? :要求ごとApache Bench:すべての同時リクエストの平均と平均

  • 時間は

がどのようにそれらのそれぞれが計算されます(すべての同時要求間で、平均)要求ごと

  • 時間(平均しますか)?

    サンプル出力:

    Time per request:  3953.446 [ms] (mean) 
    Time per request:  39.534 [ms] (mean, across all concurrent requests) 
    

    なぜ多くの違いがありますか?

  • +3

    http://serverfault.com/questions/274252/apache-ab-please-explain-the-output – Kevin

    答えて

    16

    入力を確認すると便利ですが、同時出力を実行する時間が節約できないと出力が伝えていると思います。リクエスト(平均)あたり

    時間はあなたにそれを処理するための要求の同時グループのために要した時間の平均量を伝えます。要求ごと

    時間(すべての同時要求間で、平均)はあなたにそれが自身で処理するために単一要求にかかった平均時間を伝えます。

    100個の要求を同時に処理すると、3953.446msかかりました。

    あなたがそれらを個別に処理した場合、それは39.534ms * 100 = 3953.4ms

    同じ番号を取るだろう。同時リクエスト(少なくともテストしたリクエストの総数)を実行することは時間の節約になりません。

    +1

    同時リクエストがより速い個々のリクエストにどのようにつながるかわかりません。リクエストあたりの時間(平均、すべての同時リクエスト数)は、効率的な同時リクエストの処理方法のみを示します。 – Saab

    11

    以下は、abのテスト結果の例です。私はのリクエストを同時リクエストとします。

    C:\>ab -d -e a.csv -v 1 -n 1000 -c 3 http://www.example.com/index.aspx 
    This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0 
    Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ 
    Copyright (c) 2006 The Apache Software Foundation, http://www.apache.org/ 
    
    Benchmarking www.m-taoyuan.tw (be patient) 
    Completed 100 requests 
    Completed 200 requests 
    Completed 300 requests 
    Completed 400 requests 
    Completed 500 requests 
    Completed 600 requests 
    Completed 700 requests 
    Completed 800 requests 
    Completed 900 requests 
    Finished 1000 requests 
    
    
    Server Software:  Microsoft-IIS/6.0 
    Server Hostname:  www.m-taoyuan.tw 
    Server Port:   80 
    
    Document Path:   /index.aspx 
    Document Length:  25986 bytes 
    
    Concurrency Level:  3 
    Time taken for tests: 25.734375 seconds 
    Complete requests:  1000 
    Failed requests:  0 
    Write errors:   0 
    Total transferred:  26372000 bytes 
    HTML transferred:  25986000 bytes 
    Requests per second: 38.86 [#/sec] (mean) 
    Time per request:  77.203 [ms] (mean) 
    Time per request:  25.734 [ms] (mean, across all concurrent requests) 
    Transfer rate:   1000.72 [Kbytes/sec] received 
    
    Connection Times (ms) 
           min mean[+/-sd] median max 
    Connect:  0 1 4.4  0  15 
    Processing: 62 75 9.1  78  109 
    Waiting:  46 64 8.0  62  109 
    Total:   62 76 9.3  78  109 
    

    あなたが見ることができるように、要求フィールドごとに2つの時間があります。 (すべての同時要求間で、平均)要求ごと

  • 時間(平均)要求ごと

    • 時間は

    フィールド最初のテストのために撮影した時間を確認してください。値は25.734375秒です。25734.375 msです。

    我々は1000年によって25734.375ミリを分割する場合は、フィールドの値を(すべての同時要求間で、平均値)の正確な要求ごと時間です25.734 [ミリ秒]を取得します。

    要求当りの時間(平均)の場合、値は77.203 [ms]です。値は、よりも少し長いです。要求あたりの時間(すべての同時要求の平均)はです。これは、(平均)がすべての特定の要求によってカウントされ、平均時間を計算するためです。

    簡単な例を挙げておきます。

    同時接続では、次のようにします。 試験にかかる時間はで、90msであり、各要求は40ms、50ms、30msです。だからこれら2つの価値は何ですかリクエスト1回あたりの時間

    • 要求当たりの時間(平均)=要求ごと(40 + 50 + 30)/ 3 = 40msの
    • 時間(すべての同時要求を横切って、平均)= 90/3 = 30ミリ秒

    あなたが理解することを願って。 :)

  • +1

    これは非常に良い説明です、ありがとうございます。 – tompave