Webアプリケーションを使った時に画面の表示が遅かったり、処理に時間が掛かったりした場合に何が原因なのかを調べることになりますが、そもそもアプリケーションが処理をする速度に関して、正常なのか、異常なのかを判断するための指標が必要となります。つまり、性能評価ですね。
その性能評価のための指標としてレスポンスタイムとターンアラウンドタイムという言葉があります。この二つの言葉の意味はよく混ざってしまいがちです。
そこで今回はレスポンスタイムとターンアラウンドタイムの違いを調べてみました!
システムの処理の流れ
システムが処理をする時には次のような流れになります。
- 処理の依頼開始:処理の開始を端末からコンピュータに指示する
- 依頼完了:処理依頼がサーバに届く
- 処理待ち時間:他の処理の依頼が来ているため処理待ち状態に並ぶ
- サーバ処理時間:サーバで依頼の処理を実行する
- 処理の応答開始:処理結果がサーバから送られ始める
- 応答完了:結果が全て返され端末で処理が完了する
イメージとしては次の図の通りとなります。
それぞれの処理において、処理時間が掛かりますが、どこからどこまでの処理時間を指すかによって、総時間の呼び名が変わりますので、次はその説明をします!
レスポンスタイムとは?
システムや装置などに指示や入力が与えてから、反応を返すまでの時間のことです。つまり、上記の③、④の時間になり、イメージとしては以下の図の通りとなります。
レスポンスタイムの時間が短いほど、利用者や他のシステムなどが応答を待つ「待ち時間」が少ないことを意味しますね。
ターンアラウンドタイムとは?
システムに処理要求を送ってから、結果の出力が終了するまでの時間のことです。つまり、システム処理の流れの①~⑥までの時間になります。
コンピュータの入力や出力に時間が掛からない場合、ターンアラウンドタイムはレスポンスタイムに近づきます。
それぞれの時間の長さの関係は?
レスポンスタイムとターンアラウンドタイムは上記の図を見れば分かりますが、式で表すと次のようになります。
どっちが長いのか覚え間違えし易いですが、ターンアラウンドタイムの方がレスポンスタイムより文字数が多いので、時間が長い方と覚えても良いかと思います!(ちょっと無理やりですかね…)
まとめ
今回はシステムの速度を評価するための指標となるレスポンスタイムとターンアラウンドタイムに関して調べてみました。
利用者目線では画面で操作してから結果が返ってくるターンアラウンドタイムが遅いとイライラしてしまうので、やはりシステムを作る時にはターンアラウンドタイムを意識することが重要ですね。
以上です!
コメント