David
Mon May 05 22:40:48 CDT 2008
On May 5, 2:07=A0pm, Mark <mmodr...@nospam.nospam> wrote:
> Hi...
>
> We're running IIS 6 on W2003 boxes. =A0We've been trying to replicate and
> track down some complaints of slowness on some requests. =A0In gathering i=
nfo,
> we've had a hard time getting a real sense of how long things take.
>
> We turned on logging in IIS and have been looking at the time-taken column=
. =A0
> Some support docs say that as of IIS 6, this value is supposed to include
> time to the client's final ack.
>
> We also installed Firebug 1.0.5 on the firefox clients and tried to use
> Fiddler 2 to examine things from the client perspective. =A0Fiddler seems =
very
> iffy. =A0It gets hung, drops connections, and interposes all kinds of flak=
iness
> that make the results pretty much impossible to trust.
>
> The difference between Firebug and the IIS log times though has me
> scratching my head. =A0All of the requests in question are returning 304 (=
not
> modified) after the first page view but while IIS always reports the
> time-taken as 10-60 milliseconds, Firebug is reporting up to 5 seconds for=
> those same requests. =A0The huge gap has me wondering which is more accura=
te.
>
> Is IIS really including time to the client's last ack in the 60 ms? =A0Is
> Firebug tacking on all kinds of client-side script execution? =A0Dunno.
>
> What tools do people usually use to try and sort out these kinds of things=
?
>
> Thanks
> Mark
Using client-side tools like Firebug or Fiddler is useful if you are
looking at things at the application level -- such as contents of the
HTTP request/response. Anything else about the request/response, such
as encryption, encoding, content-length, timing, etc -- are simply
unreliable from such client-side tools because it requires you to
dissect the entire request/response stack and look at values/timing at
each level -- and client-side tools simply do not have that
granularity nor is it something 95% of people are interested in.
In other words, Firebug/Fiddler will not replace profiling and other
detailed tracing tools while give detailed view of the entire request/
response stack but often overwhelms you with detail.
I use Network Monitor 3.0 from Microsoft.com and ETW Traces (requires
WS03SP1+) to completely profile from request to response, all the way
through HTTP.SYS/IIS/ASP/ASP.Net/COM+ portions of the stack. And
depending on the application, there may be additional counters that
can be enabled to dissect the time taken within the application layer
running on IIS.
IIS6 time-take starts from when HTTP.SYS first receives the request to
when the client sends the final ACK. Note this does not include time
when client sends request to when web server first receives the
request. I don't know what Firebug's measurement of "time taken"
means.
//David
http://w3-4u.blogspot.com
http://blogs.msdn.com/David.Wang
//