As Apache::DBI hasn't been tested with mod_perl 2.0 yet, you will need to:
1) make sure you are using the prefork MPM for Apache (as Stas said, Apache::DBI can only work with that one)
2) You will probably need to run mod_perl 2.0 in compat mode: put
PerlModule Apache::compat
in your httpd.conf, before loading other modules (like Apache::DBI).
I didn't expect Apache::DBI to work under mod_perl 2.0, at least not well, but was quite surprised. Today, I got it to work with this server:
Server Version: Apache/2.0.36 (Unix) mod_perl/1.99_03-dev Perl/v5.6.1 DAV/2
Using Per Ellesfsen's suggests, and also pre-loading the following startup.pl script (for compat.pm):
Rudimentary benchmarks, using a MySQL server, and very simple query, shows that Apache::DBI significantly reduces user response time, and increases the throughput of the server (a very limited single P200 MX system, with only 64MB RAM running RH 7.3):
Table 8.2: Benchmarking Results Using Database Connection Sharing
CGI | mod_perl | |
---|---|---|
Server Hostname | 192.168.1.1 | 192.168.1.1 |
Server Port | 80 | 80 |
Document Path | /cgi-bin/zipcodes.cgi?zip=”35801” | /perl/zipcodes.cgi?zip=”35801” |
Concurrency Level | 10 | 10 |
Elapsed Time | 258.722seconds | 63.691 seconds |
Complete Requests | 200 | 200 |
Failed Requests | 0 | 0 |
Total Transferred | 127000 bytes | 131843 bytes |
HTML Transferred | 89200 bytes | 90200 bytes |
Requests per Second | 0.77 | 3.20 |
Median Connection Times | 12518 ms | 424 ms |
Transfer Rate | 0.48Kbps received | 2.05Kbps received |
Charles Aulds, MCSE, MCP+I
Voice: (256) 931-5593 Fax: (240) 352-8290
http://hiwaay.net/~caulds