Apacheベンチを実行すると、次のような結果が得られます。
Command: abs.exe -v 3 -n 10 -c 1 https://mysite
Connection Times (ms)
min mean[+/-sd] median max
Connect: 203 213 8.1 219 219
Processing: 78 177 88.1 172 359
Waiting: 78 169 84.6 156 344
Total: 281 389 86.7 391 564
接続、処理、待機の定義が見つからないようです。それらの数字はどういう意味ですか?
接続時間と待機時間
接続を確立して応答の最初のビットを取得するのにかかった時間
処理時間
サーバーの応答時間-つまり、サーバーが要求を処理して応答を送信するのにかかった時間
合計時間
接続時間と処理時間の合計
私はこれを次のように同一視します:
ソースコードを見ると、次のタイミングポイントが見つかります。
apr_time_t start, /* Start of connection */
connect, /* Connected, start writing */
endwrite, /* Request written */
beginread, /* First byte of input */
done; /* Connection closed */
そして、リクエストが行われると、いくつかのタイミングが次のように保存されます。
s->starttime = c->start;
s->ctime = ap_max(0, c->connect - c->start);
s->time = ap_max(0, c->done - c->start);
s->waittime = ap_max(0, c->beginread - c->endwrite);
そして、「処理時間」は後で次のように計算されます
s->time - s->ctime;
したがって、これをタイムラインに変換すると、次のようになります。
t1: Start of connection
t2: Connected, start writing
t3: Request written
t4: First byte of input
t5: Connection closed
その場合、定義は次のようになります。
Connect: t1-t2 Most typically the network latency
Processing: t2-t5 Time to receive full response after connection was opened
Waiting: t3-t4 Time-to-first-byte after the request was sent
Total time: t1-t5
接続:リモートホストへの接続にかかる時間
処理:合計時間からリモートホストへの接続にかかる時間を引いたもの
待機中:応答の最初のバイトの受信から最後のバイトの送信を引いたもの
合計:接続前から接続が閉じられた後まで