File:
0.02.76a/server/test/standalone/wspeed.sh (
View as Code)
1: #!/usr/bin/php -q
2: 3: // wspeed.sh URI iterations [delay]
4: // FreeNATS WebSpeed Dirty Debug Checker
5:
6: $cfgReadSize=1024;
7: $cfgQuiet=false;
8:
9: $argc=$_SERVER['argc'];
10: $argv=$_SERVER['argv'];
11:
12: if ( ($argc<3) || ($argc>4) )
13: {
14: echo "FreeNATS wspeed.sh Debug Checker\n";
15: echo "Usage: wspeed.sh URI iterations [delay]\n";
16: echo "Example: wspeed.sh http://www.google.co.uk/ 100 60\n";
17: echo " - get google 100 times with a 60 second sleep each time\n";
18: echo "(default delay is 60 seconds if not specified)\n\n";
19: exit();
20: }
21:
22: $uri=$argv[1];
23: $count=$argv[2];
24: if ($argc>3) $delay=$argv[3];
25: else $delay=60;
26:
27: function fge($fp)
28: {
29: global $cfgQuiet,$cfgReadSize;
30: if ($cfgQuiet) return @fgets($fp,$cfgReadSize);
31: return fgets($fp,$cfgReadSize);
32: }
33:
34: $tries=0;
35: $opened=0;
36: $unopened=0;
37: $readok=0;
38: $readfail=0;
39:
40: echo "FreeNATS Web Speed Debug Checker - ".$uri."\n";
41: echo "Iterations: ".$count." Delay: ".$delay."s\n\n";
42:
43:
44: for ($i=0; $i<$count; $i++)
45: {
46: $startTime=microtime(true);
47: $tries++;
48: echo $i.". fopen: ";
49: if ($cfgQuiet) $fp=@fopen($uri,"r");
50: else $fp=fopen($uri,"r");
51: if ($fp>0) // opened ok
52: {
53: $opened++;
54: $size=0;
55: echo round(microtime(true)-$startTime,4)." ";
56: echo "ok, fgets: ";
57: while ($body=fge($fp))
58: {
59: echo ".";
60: $size+=strlen($body);
61: }
62: echo " ".$size.", closing: ";
63: if ($size>0) $readok++;
64: else $readfail++;
65: if ($cfgQuiet) @fclose($fp);
66: else fclose($fp);
67: echo "ok";
68: }
69: else
70: {
71: echo "FAILED";
72: $unopened++;
73: }
74: echo " ".round(microtime(true)-$startTime,4);
75: echo "\n";
76:
77: if ($i<($count-1))
78: sleep($delay);
79: }
80:
81: echo "Finished.\n\n";
82: echo "Tries: ".$tries."\n";
83: echo $opened." Opened Ok, ".$unopened." FAILED to fopen()\n";
84: echo $readok." Read Ok, ".$readfail." FAILED to fgets()\n";
85: ?>
86:
87: