The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

lwp-simple - using LWP::Simple and Benchmark.pm to benchmark mod_perl

DESCRIPTION

Here's what I generally use to benchmark, a Benchmark.pm/LWP::Simple combo. With the script below, you should be able to 'make start_httpd' in the mod_perl-x.xx/ build directory you might need to change the #! line in t/net/perl/cgi.pl the configuration is already set up for /perl/ and /cgi-bin/

cgi.pl is very small, just load CGI.pm and prints a little bit, here's the difference I see (on hpux-10.10):

Benchmark: timing 50 iterations of cgi, perl... cgi: 18 secs ( 0.96 usr 0.10 sys = 1.06 cpu) perl: 3 secs ( 0.76 usr 0.07 sys = 0.83 cpu)

THE SCRIPT

 #!/opt/perl/bin/perl

 use Benchmark;
 use LWP::Simple;

 $base = "http://localhost:8529";
 $script = "cgi.pl?PARAM=2";

 for (qw(cgi-bin perl)) {
     $$_ = join "/", $base, $_, $script;
 }

 timethese(50, {
     "cgi" => "(\$s = get('${'cgi-bin'}')) or die \$s",
     "perl" => "(\$s = get('$perl')) or die \$s",
 });

 __END__

AUTHOR

Doug MacEachern