Re: Servlet tuning (again)

I have been measuring response times of servlets on my Win98 JDK1.2 JSDK2.0 Jigsaw
2.0.1 system. This was done by adding code to the servlet (so a clients-side view will
be different).

The first suprise was that response times were quantized to around 50 ms lumps possibly
due to low res output from System.currentTimeMillis().

Even so I could determine that
my servlet code and jigsaws input output code could run in under 50ms when it wanted
to. There was no significant variation in the cpu or io tasks of the servlet and yet
the
response times varied up to 300ms as long as the servlet was kept busy.

 I let the servlet relax and did some other activity on my machine and found that on
return
to the servlet the response times could go as high as 15 seconds and usually 4 or 5
seconds!

I conclude that variations in response time are normal. Small variations are probably
due
to thread scheduling and garbage collection. Larger variations are due to the JVM
process image being swapped out of memory. Certainly my Windows OS is useless for
running servers. I am trusting that a real OS like Linux will  be OK. I try next week.

Here are the statistics from my "keep it busy" run on Win98.
http://www.cycom.co.uk/src/tfast.html

and here is the reusable java source code of the class which monitors
and presents the stats.
http://www.cycom.co.uk/src/ResponseStats.java


--
Chris Turner, http://www.cycom.co.uk/

Received on Thursday, 15 April 1999 15:50:59 UTC