I apologize for the critical tone (but also perhaps ignorance)of my
[now next to the] last post. I've got the flu or something. Yecch.

Here's the data I collected after running new, slightly modified,
scripts (see attached) for which RequestInfoExample is requested by ab
100,000 times on a Celeron 400Mz, 256MB SD100 memory, WD Caviar disk,
Redhat6.1, with almost nothing else going on:

C	T secs	X requests/sec	Connect avg (ms)	Processing avg (ms)	Cpu busy %	Cpu Ovhead (mins)	Cpu Ovhead (secs)	T - Ovhead (secs)	Cpu per request (ms)	
1	2912.78	34.33	0	28	100	0.87	52.2	2860.58	28.6	
10	1495.12	66.88	0	149	100	0.92	55.2	1439.92	14.4	
20	1488.7	67.17	0	297	100	0.98	58.8	1429.9	14.3	
30	1503.03	66.53	0	450	100	1.12	67.2	1435.83	14.4	
40	1591.7	62.83	0	636	100	1.31	78.6	1513.1	15.1	

The earlier results involving the HelloWorldExample servlet were
affected by variability which I think/hope is averaged out by the large
number of requests made. The disk, as expected shows only about 1.8
requests per second, and is not the bottleneck anyway (as expected).

My earlier results concerning HelloWorldExample were based on a smaller
N and were not adjusted to account for CPU overhead. I'll re-run them
ASAP.

In the earlier results, thread queue locking was observed. Craig noted
that the number of background threads is set to 75 in the config file.
With that in mind, I made sure that the ab script ran with 70 or fewer
concurrent requests. Here's what happened:

catalina_log*.txt shows "HttpProcessor starting background
thread[8080][i]" where i runs from 0/1 up to 50.

catalina.out contains a full thread dump (50 on down), one of which
involves the message "Waiting to be notified HttpProcessor[8080][43]".
This appears to be the result of a segmentation violation involving
HttpProcessor[8080][50] that is also reported. Of course, ab barfs from
C =3D 50 onward. As I recall, SEGV was also the cause of the thread dump=

when I ran HelloWorldExample. So, the thread dump seems to be a
repeatable phenomena (on my machine), apparently a function of N & C.

QUESTION 1: Does segmentation violation occur on other machines? If so,
is it a problem? If not, why not?

QUESTION 2: What do the thruput and average processing times mean? Are
they "good", "bad", or what?

QUESTION 3: Since the scripts can be modified to run any servlet, how
about a "realistic" one as Costin suggested in his ApacheCon
presentation (unless the examples are "representative").

(Hack) Roy

Roy Wilson
E-mail: designrw@bellatlantic.net