Gossamer Forum
Home : Products : Gossamer Forum : Discussion :

GF Performance Test

Quote Reply
GF Performance Test
This isn't scientific by any means but tonight I ran a few little tests on my server and on Gossamer in order to get a better feel for GF CGI response times.

The purpose of the little experiment was to see what kind of response times I'm getting from a shared Cobalt RaQ server and compare them, if possible, to the high performance set-up Gossamer has.

The test was simple - grab a web page, via telnet and perl, 250 times serially (maybe I'll do burst tests at a later date) and see how long it takes. The script, below, was run from my server and in each test grabbed 22kb per request.

In the first case I turned speedycgi off and requested a page off my own GF forum on my RaQ server 250 times. For the second case speedycgi was back on.

In the third case I grabbed an html (no CGI) file from Gossamer's server in order to estimate data transmission time. Since the timing script was run on my own server tests 1 and 2 did not possess network transmission time. Test cases test 3 and 4 did include network transmission times since I had to contact Gossamer's server from my server via the internet. Finally in the fourth case I requested a GF page (CGI).

The data below show the times.

Test 1. 426 seconds or 1.7 secs per request
Test 2. 85 seconds or .34 secs per request
Test 3. 132 seconds or .53 secs per request
Test 4 143 seconds or .57 secs per request (.044 effective)

Back of the envelope calcs shows my server to be five times faster when running speedycgi than without.

Subtracting the time in test 3 from test 4 gives us a Gossamer's CGI response time . This shows a minimal 11 second increase (.044 sec per request) when invoking CGI on Gossamer's server. When you compare that number to my .34 sec per request you can see I'm an order of magnitude slower and quickly come to realize Gossamer has a smoking server!

Hope you enjoyed this little excursion.

Eric P




Code:
#!/usr/bin/perl
use strict;
use LWP::Simple;

my $start = time();
my $status;

for (1..$ARGV[0]){
$status =getstore("$ARGV[1]","/dev/null");
die "Couldn't get it!" unless is_success($status);
}

my $stop = time();
print "elapsed time = ",$stop-$start,"\n";
Subject Author Views Date
Thread GF Performance Test Eric P 3778 Apr 24, 2003, 11:44 PM
Thread Re: [Eric P] GF Performance Test
Jagerman 3681 Apr 25, 2003, 12:42 AM
Post Re: [Jagerman] GF Performance Test
Jagerman 3664 Apr 25, 2003, 12:51 AM
Thread Re: [Jagerman] GF Performance Test
klauslovgreen 3668 Apr 25, 2003, 9:25 AM
Post Re: [klauslovgreen] GF Performance Test
Paul 3646 Apr 25, 2003, 9:45 AM
Thread Re: [klauslovgreen] GF Performance Test
cwi 3615 Apr 26, 2003, 12:10 PM
Post Re: [cwi] GF Performance Test
Paul 3613 Apr 26, 2003, 12:16 PM