客が到着してからサービス完了までにかかる平均時間(待ち時間+処理時間)
平均応答時間 Wとは、客が到着してから処理が完了して立ち去るまでの全体の平均時間のことです。「列で待った時間」と「窓口で処理された時間」を合わせた、客が体感する所要時間そのものを指します。
身近な例で言うと、ラーメン屋に着いてから、行列に並び、席に座って食べ終えて出るまでの合計時間です。待ち時間だけでなく食べる時間(=処理時間)も含むのがポイント。上のツールで λ を上げると、待ちの帯(オレンジ)が伸びてW全体が長くなる様子が見られます。
W はシステムの「ターンアラウンドタイム」(=処理を依頼してから結果が返るまでの総時間)に対応し、Webサービスのレスポンス速度やバッチ処理の所要時間の見積もりに使われます。
M/M/1モデルの平均応答時間は、シンプルな次の式で求まります。
W = 1 / (μ − λ)
分母の (μ−λ) は処理能力の余裕(さばく速さ − 来る速さ)です。余裕が大きいほど応答は速く、余裕が0に近づく(λがμに迫る)ほど応答時間は急激に長くなります。
この式は、待ち時間と処理時間の合計としても導けます。
・待ち時間 Wq = ρ/(μ−λ)
・処理時間 1/μ
・応答時間 W = Wq + 1/μ = 1/(μ−λ)
計算例:λ=3、μ=5 のとき、
W = 1/(μ−λ) = 1/(5−3) = 1/2 = 0.5
─ 内訳 ─
待ち Wq = ρ/(μ−λ) = 0.6/2 = 0.3
処理 1/μ = 1/5 = 0.2
合計 0.3 + 0.2 = 0.5 ✓
よく混同されますが、平均待ち時間 Wq と平均応答時間 W は別物です。違いは「処理時間 1/μ を含むかどうか」のたった一点です。
| 平均待ち時間 Wq | 平均応答時間 W | |
|---|---|---|
| 含む時間 | 列で待つ時間のみ | 待つ時間 + 処理時間 |
| 計算式 | ρ/(μ−λ) | 1/(μ−λ) |
| 関係 | W − 1/μ | Wq + 1/μ |
| ρ=0のとき | 0(待ちなし) | 1/μ(処理時間は残る) |
覚え方は 「応答時間 W = 待ち時間 Wq + 処理時間 1/μ」。レジの例で言うと、Wq は並んでいる時間、1/μ は自分の番でスキャンされる時間、W はレジに着いてから袋を受け取って出るまでの全部です。
「待ち時間」と「応答時間(処理含む)」は別物である点に注意が必要です。処理時間を含めてサービス完了までを指すのが応答時間 W、行列で待つ時間だけを指すのが待ち時間 Wq です。