[Web]IISログでWebサイトの性能を計測する

IISのログに出力できるtime-takenというフィールドは、そのリクエスト→レスポンス全体にかかった時間です。単位はms。

ちょっと癖がありますが、うまく使えばWebサイトの性能計測に使えます。

詳しく

time-takenフィールドの癖とは、IISの処理時間だけではなくネットワークの時間も含まれるというところです。

time-takenの値の正体は、HTTP.sysがクライアントからRequestの最初のバイトを受け取ってからResponseの最後の送信パケットに対するAckを受け取るまで の時間です。

ですので、time-takenをざっくり表現すると、クライアントがリクエストを送信開始してからレスポンスを全て受け取るまでの時間ということになります。

Webページ/Webアプリの性能だけではなく、リクエスト/レスポンスのデータ量およびクライアント-サーバー間のネットワーク速度に大きく影響を受けるのでその点は注意が必要ですが、ある意味ユーザーの体感に近い値であるとも言えそうです。

補足:HTTP.sysについて軽く

HTTP.sysはHTTP要求を受け取ってワーカープロセス(Windowsにおいては一般的にIIS(w3wp.exe))にルーティングするカーネルモードドライバです。
簡単に言うと、TCP/IPの直上に乗っかっているHTTP送受信の最前線です。

参照情報

Posted in Web

コメントを残す