ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/DBS/Servers/Tests/run_cgi_client.sh
Revision: 1.1
Committed: Wed Feb 15 21:32:46 2006 UTC (19 years, 2 months ago) by lueking
Content type: application/x-sh
Branch: MAIN
CVS Tags: DBS_0_0_3a, DBS_0_0_3, DBS_0_0_2, DBS_0_0_1, pre_DBS_0_0_1, post_dict_type_checking_merge, post_MiniPythonAPI_merged_to_trunk, pre_MiniPythonAPI_merge_to_trunk, DBS_0_0_0, vs20060320, AfterJan2006SchemaChanges_v01_00_01, HEAD
Branch point for: BranchForCPPWebServiceTesting
Error occurred while calculating annotation data.
Log Message:
load tests for cgi vs. ws

File Contents

# Content
1 #!/bin/sh
2 #
3 # 15 Feb, 2006: Adapted by L. Lueking from S. Veseli's SAM tests
4 #
5 # usage: ./run_cgi_client.sh nclients outputSuffix dspath
6 # example: ./run_cgi_client 10 test /a/b/c/d
7 nClients=$1
8 outputSuffix=$2
9 dspath=$3
10 nCalls=$4
11
12 # cft% : 5010 results
13 # sam% : 1359
14 cnt=0
15 echo "Using suffix: $outputSuffix"
16 echo "N clients: $nClients"
17 while [ "$cnt" != "$nClients" ]; do
18 cnt=`expr $cnt + 1`
19 outputFile=cgi_client.${cnt}.${outputSuffix}.out
20 cmd="./cgiLoadTest.py --dspath='$dspath' --n-calls=$nCalls --n-term=1 > $outputFile 2>&1 &"
21 echo "Executing: $cmd"
22 eval $cmd
23 done
24
25
26 # Allow for clients to be initialized
27 while true; do
28 attemptStr=`grep Attempt $outputFile`
29 if [ "$attemptStr" != "" ]; then
30 break
31 fi
32 sleep 1
33 done
34 startTime=`date +%s`
35 echo "Start time: $startTime"
36 cnt=0
37 while [ "$cnt" != "$nClients" ]; do
38 cnt=`expr $cnt + 1`
39 echo "Waiting for child #$cnt"
40 wait
41 done
42 endTime=`date +%s`
43 echo "End time: $endTime"
44 diff=`expr $endTime - $startTime`
45 echo "Time difference: $diff"
46 averageTime=`echo "$nClients $nCalls $diff" | awk '{print $3/($1 * $2)}'`
47 averagePyTime=`grep "Average Successful Call Duration" $outputFile | awk '{print $(NF-1)}'`
48 minPyTime=`grep "Minimum Call Duration" $outputFile | awk '{print $(NF-1)}'`
49 maxPyTime=`grep "Maximum Call Duration" $outputFile | awk '{print $(NF-1)}'`
50 echo "Minimum Call Time (Python): $minPyTime"
51 echo "Maximum Call Time (Python): $maxPyTime"
52 echo "Number of Clients/Average Call Time (Python): $nClients $averagePyTime"
53 echo "Number of Clients/Average Call Time: $nClients $averageTime"
54
55
56
57
58