Koha benchmarking

Plain old CGI

Authentication successful
--------------
Koha circulation benchmarking utility
--------------
Benchmarking with 200 occurences of each operation and 10 concurrent sessions
Load testing staff client dashboard page 127347ms 1.57051206545894 pages/sec
Load testing catalog detail page 131230ms 1.52404175874419 biblios/sec
Load testing patron detail page 128608ms 1.55511321224185 borrowers/sec
Load testing circulation transaction (checkouts) 132053ms 1.51454340302757 checkouts/sec
Load testing circulation transaction (checkins) 132129ms 1.51367224454889 checkins/sec
Load testing all transactions at once 374410ms 2.67086883363158 operations/sec

mod_perl

Authentication successful
--------------
Koha circulation benchmarking utility
--------------
Benchmarking with 200 occurences of each operation and 10 concurrent sessions
Load testing staff client dashboard page 10578ms 18.9071658158442 pages/sec
Load testing catalog detail page 1450ms 137.931034482759 biblios/sec
Load testing patron detail page 10318ms 19.3836014731537 borrowers/sec
Load testing circulation transaction (checkouts) 16046ms 12.4641655241182 checkouts/sec
Load testing circulation transaction (checkins) 11541ms 17.3295208387488 checkins/sec
Load testing all transactions at once 38375ms 26.0586319218241 operations/sec

Circulation at least seems fine under mod_perl, I will do more testing but with a 1000% speed increase, this is definitely where we want to spend some quality testing time.

Posted on January 11, 2010 at 9:39 pm by Chris · Permalink
In: Koha · Tagged with: , ,

2 Responses

Subscribe to comments via RSS

  1. Written by Dobrica Pavlinui?
    on January 12, 2010 at 2:08 am
    Permalink

    Could you share your mod_perl configuration? My experiment with Koha last summer under mod_perl occasionally segfaulted Apache, but this might changed in last few months.

    • Written by Chris
      on January 12, 2010 at 2:52 pm
      Permalink

      It’s a pretty simple set up, purely for testing. And I am totally willing to believe it will still cause problems. But it is certainly worth testing.

      PerlRequire "/home/chris/mod_perl-startup.pl"
      PerlModule ModPerl::Registry
      <Location /cgi-bin/>
      SetHandler perl-script
      PerlResponseHandler ModPerl::Registry
      PerlOptions +ParseHeaders
      Options +ExecCGI
      </Location>

      And my startup script is as simple as

      if ( ! {MOD_PERL}) { die "GATEWAY_INTERFACE not Perl!"; }
      use lib qw(/home/chris/git/koha.git);
      1;

Subscribe to comments via RSS