Apache Benchの結果を出したけれどこれどうやって見ればいいんだ...
なんとなく雰囲気で分かるっちゃ分かるけど、それぞれの数字が高いほうがいいのか、低い方がいいのかなど一通り確認しておいた方が良い項目とその内容についてまとめてみた。
Time taken for tests
テストそのものに要した時間
数値が低い方が好ましい
Failed requests
処理に失敗したリクエストの数
数値が低い方が好ましい
Requests per second
1秒で処理できるリクエスト数
数値が高い方が好ましい
Time per request
1リクエストにつき処理に要した時間
数値が低い方が好ましい
Transfer rate
1秒間で受け取ったデータの大きさ
数値が高い方が好ましい
Connection Times (ms)
Connection Timesは以下のように表になっている
min | mean | [+/-sd] | median | max | |
---|---|---|---|---|---|
Connect | 3 | 5 | 0.6 | 5 | 6 |
Processing | 12369 | 22262 | 4397.2 | 24363 | 25712 |
Waiting | 12111 | 21773 | 4422.1 | 23817 | 25703 |
Total | 12375 | 22266 | 4396.8 | 24367 | 25716 |
横軸
min
最小値
mean
平均値
[+/-sd]
標準偏差
標準偏差って??
データのばらつき具合を示す数字で、
平均値を基準として標準偏差の値を絶対値とした範囲内の数値が、全データの数値の70%の範囲になる。
例えば、上記の表の「Connect」の列を見た場合、平均値が5ms、標準偏差が0.6となるため
全リクエストのスコアの70%程度が4.4ms〜5.6msの範囲内に収まるということになる。
つまりこの数字があまりに大きい場合は平均値があまりアテにならない。
median
中央値
中央値って??
データを数値順に並べた際に中央にくる値
例えば全データの中で極端に高かったり低かったりするような、平均値に著しく影響のある数値が発生した場合は中央値が参考となる。
max
最大値
縦軸
いずれも数値が低い方が好ましい。
Connect
接続時間
Processing
処理時間
Waiting
待ち時間
Total
合計時間
Percentage of the requests served within a certain time (ms)
Percentage of the requests served within a certain time (ms)は以下のように表示される。
50% 24367
66% 25205
75% 25364
80% 25560
90% 25629
95% 25664
98% 25690
99% 25716
100% 25716 (longest request)
全リクエストの割合(%)に対して、処理が完了した時間(ms)を表す。
例えば「50% 24367」の場合、50%のリクエストを完了させるのに24367msかかっている。
何れも数値が低い方が好ましい。