【れすぽんすたいむ】

レスポンスタイム とは?

最終更新:
💡 注文してから料理が届くまでの待ち時間、短いほど快適

リクエストや操作の開始から、定義した応答点までの経過時間。最初の応答、応答の受信完了、画面表示など、何を終点とするかを測定時に明確にする。

📌 このページのポイント
測定範囲を決めて応答時間を測る 利用側 サーバー 処理 リクエスト 応答 利用側で送信〜受信完了を測る例 往路通信 サーバー処理 DB待ちなども含む 復路通信 送信 受信完了 この例では全区間が応答時間
単純化した例で、各区間の幅は実際の時間比ではありません。最初の応答までを測る指標とは終了点が異なります。DB時間をサーバー処理へ二重に加算しません。
ひよこ ひよこ
レスポンスタイムって何のこと?
ペンギン先生 ペンギン先生
リクエストや操作を始めてから、決めた応答点までの待ち時間だよ。注文から料理が届くまで、という例えに近い。測るときは、どこからどこまでを含めるかも一緒に決めるんだ。
ひよこ ひよこ
最初の応答が来たら計測は終わり?
ペンギン先生 ペンギン先生
測定の定義によるよ。ブラウザのResource Timingでは、最初の応答バイトを受け取るresponseStartと、最後のバイトなどの受信完了を示すresponseEndは別の時点。画面表示の完了は、さらに描画の処理も関わるよ。
ひよこ ひよこ
レイテンシとは違うの?
ペンギン先生 ペンギン先生
レイテンシも文脈によって、通信の遅延やリクエストを処理する時間などを指すよ。Google SREではリクエストの処理にかかる時間をlatencyと呼んでいる。名前だけで範囲を決めず、測定場所と開始・終了点を確認しよう。
ひよこ ひよこ
改善するにはどうすればいいの?
ペンギン先生 ペンギン先生
まず通信、サーバー処理、DBへの問い合わせなど、どこが遅いかを調べるよ。その原因に応じてキャッシュ、クエリの見直し、配信場所の工夫などを検討する。DB待ちがサーバー処理に含まれているなら、合計時に二重に足さないようにしよう。
ひよこ ひよこ
平均が短ければ十分なの?
ペンギン先生 ペンギン先生
一部の応答だけ非常に遅くても平均では見えにくいよ。p99は測定した時間の分布の99パーセンタイルで、遅い側を調べる目安。対象期間や成功・失敗の扱いを揃えて評価する。何ミリ秒を目標にするかはサービスごとに決めるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「レスポンスタイム」って出てきたら「リクエストから応答が返るまでの待ち時間」と思えればだいたいOK!
📖 おまけ:英語の意味
「Response Time」 = 応答時間
💬 「レスポンス(応答)」の「タイム(時間)」でそのままの意味だよ。日本語では「応答時間」とも呼ばれるよ

参考資料

← 用語集にもどる