Hi, I apologize for the critical tone (but also perhaps ignorance)of my 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 X Conn Proc %Busy Overhead T-Overhead CPU/req secs reqs/sec ms avg CPU CPU min secs secs ms 1 2912.778 34.33 0 28 100 0.87 52.2 2860.578 0.0286 10 1495.122 66.88 0 149 100 0.92 55.2 1439.922 0.0144 20 1488.695 67.17 0 297 100 0.98 58.8 1429.895 0.0143 30 1503.032 66.53 0 450 100 1.12 67.2 1435.832 0.0144440 1591.704 62.83 0 636 100 1.31 78.6 1513.104 0.0151 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 = 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:[EMAIL PROTECTED]
# Draft script by Roy Wilson used on Redhat6.1 system (bash) # Assume ONLY HelloWorld servlet being used: better to have a set, but what? # # To promote comparability, run script immediately after a cold boot echo Run script only after a cold boot to make results comparable echo When done please and post the summary file to Tomcat dev list echo Usage: echo sh tcscript servlet-name max-concurrency increment echo Example: echo sh tcscript HelloWorldExample 100 10 rm -f summary sh tcscript 1 $1 load="$3" while [ "$load" -le "$2" ] do echo "Starting ab with load = " $load sh tcscript $load $1 load=$(($load+$3)) done
# Roy Wilson 11/2/00 echo "Starting ab load test with C = " $1 "and servlet = "$2 rm -f $1$2.sardata # Next 2 lines may need adjustment on account of OS differences # Start with a fresh temporary system accounting log file date >> summary cp /var/log/savacct /var/log/tcacct /usr/sbin/accton /var/log/tcacct # sample CPU and disk usage with 1 second resolution (sar -u -b -o $1$2.sardata 1 > /dev/null )& sarpid=$! # modify path in next line for use of servlet /usr/sbin/ab -n 100000 -c $1 http://ALFRED:8080/examples/servlet/$2 >> summary kill -s TERM ${sarpid} # Next line may need modification: Turns off system accounting /usr/sbin/accton # peel off raw data, keep sar summary line sar -f $1$2.sardata 1 | grep Average >> summary # collect CPU per minute data from system accounting package /usr/sbin/sa -a /var/log/tcacct >> summary rm -f $1$2.sardata echo "Finished ab load test with C = "$1 "and servlet = "$2
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]