Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

In a typical multi-tier web application, how to measure the response time from when the server receive the request to the time server send out the response? I want focus on the server side performance, so I do NOT want to include the time the response spent at the internet.

The trouble is that web server logs usually logs response time which include the network time. For example in IIS, the "time taken" field in the access log reports the time when the server receive the request to the time server receive the acknowledge of response from the end user, see this MSDN article for more detail.

Are there any monitoring tool or server configuration to enable such measurement?

share|improve this question

3 Answers 3

up vote 1 down vote accepted

Run a network capture on the server and look at the time the server recieved the request and compare it to the time it responded to the request. That will show you when the request hit the network stack on the server and when it left the network stack, which should be a rough approximation of how fast the server is processing the request.

share|improve this answer
    
Network capture is indeed a valid answer. But running simple network capture software (e.g. tcpdump,wireshark) is no fun in production environment which has lots of traffic, and you have to correlate tcp packages to web transaction manually. –  IZhen Aug 4 '11 at 3:55
    
It isn't fun, but that's what's needed. Good luck. –  joeqwerty Aug 4 '11 at 3:58
    
And it's a SMOP to make the analysis automatic. –  womble Aug 4 '11 at 4:06

The testing/sampling should take place with the least amount of intermediate networking as much as possible to isolate/eliminate the network latency timing affects.

As for testing tools, Mercury Interactive has some very good tools. They have since been purchased by HP, so you might look there to see what is currently available.

share|improve this answer

Just add logging within your application to measure the time involved in whatever part of the entire service cycle you want to measure. Good frameworks do this for you automatically.

share|improve this answer
    
What framework do you refer to? –  IZhen Aug 4 '11 at 3:52
    
The good ones. Names vary by language. –  womble Aug 4 '11 at 4:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.